[Python-bugs-list] [ python-Bugs-697591 ] string.atoi function causing TypeError
SourceForge.net
noreply@sourceforge.net
Tue, 04 Mar 2003 14:51:02 -0800
Bugs item #697591, was opened at 2003-03-04 14:51
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=697591&group_id=5470
Category: Python Library
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Jim Murff (jmurff)
Assigned to: Nobody/Anonymous (nobody)
Summary: string.atoi function causing TypeError
Initial Comment:
Discoved this when using Pmw with 2.3a1 and a2 found atoi
doesn't work properly. So, I wrote a small test:
------------------
import string
if __name__ == __main__:
num = atoi(test, 10)
------------------
Always get and exception from it and using Pmw that is the
same:
<...>
python2.3/string.py, line 220
return _int(s, base)
TypeError: int() can't convert non-string with explicit base
Seems to always pass a string like it asks for.
I can also reproduce by using the MenuBar.py and
MainMenuBar.py in Pmw/Pmw1.1/demos.
I fixed it by looking at python2.3/stringold.py. I took the guts of
atoi from there.
So it was:
---------------
def atoi(s, base=10) :
return _int(s, base)
It is now:
--------------
def atoi(*args) :
try:
s = arg[0]
except IndexError:
raise TypeError('function requires a least one argument: %d
given' % len(args))
return apply(_int, args)
Hope this helps. Not sure if it is best way to fix it but solved all our
errors using atoi for now.
Let me know if you need more info. - jmurff@pacbell.net
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=697591&group_id=5470