我有一个文本文件" numbers.txt"它包含一行:
1
要确定此字符串是否为数字,我这样做:
>>> fr = open("number.txt","r")
>>> line = fr.open()
>>> print line,type(line)
1
<type 'str'>
这是正确的 但是,当我这样做时,
>>> line.isdigit()
False
我也检查过以下内容:
>>> '1'.isdigit()
True
当我从文件中读到它时,为什么不能呢?
提前感谢任何想法和解决方案。
答案 0 :(得分:2)
这是因为您的文件包含新行或其他空格。阅读后你可以strip
你的文件(注意这是为了确定你的文件包含一个字符):
fr = open("number.txt","r").read()
fr.strip().isdigit()
如果你有其他线路,你可以通过线路:
with open("number.txt","r") as f :
for line in f :
print f.strip().isdigit()