newbie question - python blocking on int()?
Michael Davis
michael at damaru.com
Mon Jun 10 23:16:36 EDT 2002
Chris Liechti wrote:
> Michael Davis <michael at damaru.com> wrote in
> news:4LaN8.2488$Vr2.586019 at news20.bellglobal.com:
>> I'm writing a specialized ftp client. I'm parsing the output of ftp.dir,
>> which gives me a string like this (call it str):
>>
>> -rw-r--r-- 1 fred 527 Jun 4 22:58 report.php
>>
>> and I'm getting the various parts like this:
>>
>> details = string.split( str )
>> permissions = details[0]
>> size = details[3]
>> name = details[7]
>> debug( "added remote file size %5d: %s" % (int(size), name) )
>>
>> This works. But when I replace the 3rd line with this:
>>
>> size = int( details[3] )
>>
>> python hangs on that line. Why?
>
> not when i try it... what do you mean by "hangs" does it takes forever or
> do you see an error message? if its the later, then you might have
> assigned something to "int" somewhere else, hiding the builtin function.
Thanks for replying. Actually, it's the former - when I say 'hangs', I mean
that the program appears to stop running at that point. If I write:
print "one"
size = int( details[3] )
print "two"
it prints "one" but not "two".
As far as the other points go, luckily I'm in control of all the file names,
and I can ensure that none has spaces. Spaces in filenames were always a
terrible idea, I think. And I didn't call the string 'str', I called it
'line', which I don't think is a reserved word or function name.
Cheers,
Michael
>
> note that you should not use "str" as a name as that is a builtin
> object/function that can be very handy. e.g. in python 2.2+ you could have
> written "details = str.split(line)"
> (or even "details = line.split()" which i prefer)
>
> also note that split() might not be safe for every case. e.g when the user
> name contains a space (if possible) and surely when the filename has a
> space in it.
>
> chris
>
--
Michael Davis
Damaru
Custom Programming - Web Development - Database Design
http://www.damaru.com
416-540-1284
More information about the Python-list
mailing list