[Python-Dev] RFC: PEP 460: Add bytes % args and bytes.format(args) to Python 3.5 (original) (raw)
Chris Barker chris.barker at noaa.gov
Fri Jan 10 22:52:20 CET 2014
- Previous message: [Python-Dev] RFC: PEP 460: Add bytes % args and bytes.format(args) to Python 3.5
- Next message: [Python-Dev] RFC: PEP 460: Add bytes % args and bytes.format(args) to Python 3.5
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Fri, Jan 10, 2014 at 9:17 AM, Juraj Sukop <juraj.sukop at gmail.com> wrote:
As you may know, PDF operates over bytes and an integer or floating-point number is written down as-is, for example "100" or "1.23".
Just to be clear here -- is PDF specifically bytes+ascii?
Or could there be some-other-encoding unicode in there?
If so, then you really have a mess!
if it is bytes+ascii, then it seems you could use a unicode object and encode/decode to latin-1
Perhaps still a bit klunkier than formatting directly into a bytes object, but workable.
b'%.1f %.1f %.1f RG' % (r, g, b)
is more confusing than: b'%s %s %s RG' % tuple(map(lambda x: (u'%.1f' % x).encode('ascii'), (r, g, b)))
Let's see, I think that would be:
u'%.1f %.1f %.1f RG' % (r, g, b)
then when you want to write it out:
.encode('latin-1')
dumping the binary data in would be a bit uglier, for teh image example:
stream ...binary image data... endstream endobj
u"stream\n%s\nendstream\nendobj"%binary_data.decode('latin-1')
I think.....
not too bad, though if nothing else an alias for latin-1 that made it clear it worked for this would be nice.
maybe ascii_plus_binary or something?
-Chris
--
Christopher Barker, Ph.D. Oceanographer
Emergency Response Division NOAA/NOS/OR&R (206) 526-6959 voice 7600 Sand Point Way NE (206) 526-6329 fax Seattle, WA 98115 (206) 526-6317 main reception
Chris.Barker at noaa.gov -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20140110/4e1ec1a6/attachment-0001.html>
- Previous message: [Python-Dev] RFC: PEP 460: Add bytes % args and bytes.format(args) to Python 3.5
- Next message: [Python-Dev] RFC: PEP 460: Add bytes % args and bytes.format(args) to Python 3.5
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]