In article <[EMAIL PROTECTED]>,
"Serge Orlov" <[EMAIL PROTECTED]> wrote:
> Ron Garret wrote:
> > In article <[EMAIL PROTECTED]>,
> > Robert Kern <[EMAIL PROTECTED]> wrote:
> >
> > > Ron Garret wrote:
> > >
> > > > I forgot to mention:
> > > >
> > > >>>>sys.getdefaultencoding()
> > > >
> > > > 'utf-8'
> > >
> > > A) You shouldn't be able to do that.
> >
> > What can I say? I can.
> >
> > > B) Don't do that.
> >
> > OK. What should I do instead?
>
> Exact answer depends on what OS and terminal you are using and what
> your program is supposed to do, are you going to distribute the program
> or it's just for internal use.
I'm using an OS X terminal to ssh to a Linux machine.
But what about this:
>>> f2=open('foo','w')
>>> f2.write(u'\xFF')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
UnicodeEncodeError: 'ascii' codec can't encode character u'\xff' in
position 0: ordinal not in range(128)
>>>
That should have nothing to do with my terminal, right?
I just found http://www.amk.ca/python/howto/unicode, which seems to be
enlightening. The answer seems to be something like:
import codecs
f = codecs.open('foo','w','utf-8')
but that seems pretty awkward.
rg
--
http://mail.python.org/mailman/listinfo/python-list