Delaney, Timothy (Tim) wrote: > M.-A. Lemburg wrote: > >> Perhaps we ought to add an exception to the dict lookup mechanism >> and continue to silence UnicodeErrors ?! > > I'd definitely consider a UnicodeError to be an indication that two > objects are not equal.
Not really: Python expects all strings to be ASCII whenever they meet Unicode strings and have to be converted to Unicode. If a string is not ASCII and thus causes the exception, there's not a lot you can say, since you don't know the encoding of the string. All you know is that it's not ASCII. Instead of guessing, Python then raises an exception to let the programmer decide. > At the very least, in the context of a dictionary > lookup. The point here is that a typical user won't expect any comparisons to be made when dealing with dictionaries, simply because the fact that you do need to make comparisons is an implementation detail. So in this particular case silencing the exception might be the more user friendly way of dealing with the problem. That said, the problem still lingers in that dictionary, so it may bite you in some other context, e.g. when iterating over the list of keys. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Aug 04 2006) >>> Python/Zope Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! :::: _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com