如何解决Python isalpha 给出错误的结果
with open("text.txt") as f:
for line in f:
line.isalpha()
False
文件只有一行,内容是: "abc"
解决方法
我认为这是因为“abc”内容后面有一个空格
,据我所知,文件行通常以换行符 \n
终止,这就是 isalpha()
返回 false 的原因。
正如其他人指出的,它必须是文件中的其他一些字符;可能是“\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'
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。