Martin v. Loewis wrote: > nn wrote: > > > > Stefan Behnel wrote: > >> nn, 23.03.2010 19:46: > >>> Actually what I want is to write a particular byte to standard output, > >>> and I want this to work regardless of where that output gets sent to. > >>> I am aware that I could do > >>> open('nnout','w',encoding='latin1').write(mychar) but I am porting a > >>> python2 program and don't want to rewrite everything that uses that > >>> script. > >> Are you writing text or binary data to stdout? > >> > >> Stefan > > > > latin1 charset text. > > Are you sure about that? If you carefully reconsider, could you come to > the conclusion that you are not writing text at all, but binary data? > > If it really was text that you write, why do you need to use > U+00FD (LATIN SMALL LETTER Y WITH ACUTE). To my knowledge, that > character is really infrequently used in practice. So that you try to > write it strongly suggests that it is not actually text what you are > writing. > > Also, your formulation suggests the same: > > "Is there any way to write a value 253 to standard output?" > > If you would really be writing text, you'd ask > > > "Is there any way to write '�' to standard output?" > > Regards, > Martin
To be more informative I am both writing text and binary data together. That is I am embedding text from another source into stream that uses non-ascii characters as "control" characters. In Python2 I was processing it mostly as text containing a few "funny" characters. -- http://mail.python.org/mailman/listinfo/python-list