find integers in f.readline()
MRAB
python at mrabarnett.plus.com
Fri Apr 30 10:48:16 EDT 2010
elsa wrote:
> Hi people,
>
> I'm having a problem getting the info I need out of a file.
>
> I've opened the file with f=open('myFile','r').
>
> Next, I take out the first line with line=f.readline()
>
> line looks like this:
>
> '83927 300023_25_5_09_FL 9086 9134 F3LQ2BE01AQLXF 1 49 + 80
> ZA8Z89HIB7M'
>
> I then split it into parts with parts = line.split()
>
> ['83927', '300023_25_5_09_FL', '9086', '9134', 'F3LQ2BE01AQLXF', '1',
> '49', '+', '80', 'ZA8Z89HIB7M']
>
> Now, I need to test whether I can call int(parts[0]) or not. Some of
> the lines in my file start with a value which represents and integer
> (as above), while others are just strings of characters. I want to
> extract just the lines like the one above, that start with an integer.
> Any suggestions?
>
You can test whether a string contains only digits with the .isdigit()
method:
>>> '83927'.isdigit()
True
>>> '-10'.isdigit()
False
>>> 'something_else'.isdigit()
False
but usually it's better just to catch the ValueError exception.
More information about the Python-list
mailing list