On 1/16/2014 7:34 AM, Ernest Adrogué wrote:
Hi,
There seems to be some inconsistency in the way exceptions handle Unicode
strings. For instance, KeyError seems to not have a problem with them
raise KeyError('a')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'a'
raise KeyError(u'ä')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: u'\xe4'
On the other hand ValueError doesn't print anything.
raise ValueError('a')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: a
raise ValueError(u'ä')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError
I'm using Python 2.7.6 on a Unix machine.
Fixed at some point in 3.x. In 3.4b2:
>>> ValueError(b'a')
ValueError(b'a',)
>>> ValueError('a')
ValueError('a',)
--
Terry Jan Reedy
--
https://mail.python.org/mailman/listinfo/python-list