with open("text.txt") as f:
for line in f:
line.isalpha()
False
文件只有一行,内容为:“abc”
with open("text.txt") as f:
for line in f:
line.isalpha()
False
文件只有一行,内容为:“abc”
我认为这是因为“abc”内容后面有一个空格
正如其他人指出的那样,它必须是文件中的其他一些字符;可能是 "\n" 用于行终止,或其他一些。
简而言之,您要删除这些字符。尝试:
line.strip().isalpha()
完整解释如下。
加载数据:
with open("text.txt") as f:
for line in f:
line.isalpha()
线的输出是:
>>> line
'abc\n'
当然,结果isalpha()
是错误的:
>>> print(line.isalpha())
False
但是,删除\n
您会获得正确的结果:
>>> line.strip()
'abc'
>>> line.strip.isalpha()
True
(要解决此问题,您可能只想在解释器中输出该行,不带print
语句,否则您不会看到特殊字符为'\n'
)
据我所知,文件行通常由换行符终止,\n
这就是为什么isalpha()
返回 false 的答案。