On Mar 17, 4:34 pm, "Joshua.R.Engl...@gmail.com"
<Joshua.R.Engl...@gmail.comwrote:
Quote:
I'm trying to use a script that I originally wrote on a Mac Classic
machine and have moved to a Windows XP machine.
>
I can open the script and edit the thing, but when I try to run it in
I get:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python25\lib\lib-tk\Tkinter.py", line 1403, in __call__
return self.func(*args)
File "C:\Python25\lib\idlelib\MultiCall.py", line 151, in handler
r = l[i](event)
File "C:\Python25\lib\idlelib\ScriptBinding.py", line 151, in
run_module_event
dirname = os.path.dirname(filename)
File "C:\Python25\lib\ntpath.py", line 207, in dirname
return split(p)[0]
File "C:\Python25\lib\ntpath.py", line 172, in split
while head2 and head2[-1] in '/\\':
TypeError: 'int' object is not iterable
>
I've converted the text to windows format, and the other scripts that
I transferred at the same time work.
>
What's going on here?
The following demonstrate the correct behaviour of ntpath.split():
Python 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Quote:
Quote:
Quote:
>>import ntpath
>>ntpath.split('foo\\\\')
('foo', '')
Quote:
Quote:
Quote:
>>ntpath.split('foo\\\\bar\\\\')
('foo\\\\bar', '')
Quote:
Quote:
Quote:
>>ntpath.split('foo\\\\bar')
('foo', 'bar')
Quote:
Quote:
Quote:
>>ntpath.split('foo\\bar')
('foo', 'bar')
Quote:
Quote:
Quote:
>>ntpath.split('\\\\bar')
('\\\\', 'bar')
I can't see how this error could arise from the line:
while head2 and head2[-1] in '/\\':
The only possible iterable is the constant '/\\' ...
You may have a corrupt Python 2.5 installation; try the above tests;
if one fails, delete any ntpath.pyc and/or ntpath.pyo and try again.
I'm suspicious of the 'lib' directory name; standard Python
installations on Windows call the directory 'Lib' AFAIK; how did you
install Python?
HTH,
John