[Python-Dev] Symbolic errno values in error messages

M.-A. Lemburg mal at egenix.com
Fri May 16 17:35:37 CEST 2008


On 2008-05-16 17:02, Alexander Belopolsky wrote:
> On Fri, May 16, 2008 at 10:52 AM, Yannick Gingras <ygingras at ygingras.net> wrote:
> 
>>>>>> print e
>>> [Errno 21] Is a directory
>>>
>>> So now I am not sure what OP is proposing.  Do you want to replace 21
>>> with EISDIR in the above?
>> Yes, that's what I had in mind.
>>
> 
> In this case, I have a more drastic proposal.  Lets change
> EnvironmentError errno attribute (myerrno in C) to string.  

-1

You never want to change an integer field to a string.

>'EXYZ'
> strings can be interned, which will make them more efficient than
> integers for lookups and comparisons (to literals).  A half-way and
> backward compatible solution would be to stick 'EXYZ' code at the end
> of the args tuple and add an errnosym attribute.

Actually, you don't have to put it into any tuple. Just add it
to the error object as attribute.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, May 16 2008)
 >>> 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,MacOSX for free ! ::::


    eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
     D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
            Registered at Amtsgericht Duesseldorf: HRB 46611


More information about the Python-Dev mailing list