字符串比较似乎不适用于从文件中读取的行

字符串比较似乎不适用于从文件中读取的行,第1张

字符串比较似乎不适用于从文件中读取的行

为什么没有“我们有比赛!” 被打印?我错过了什么?

如果您会注意到控制台上的输出,则您会因为第二个而得到 双倍

n
(换行),这是因为
print
第二个是因为文件中的每一行都
n
在末尾。您的文件如下所示:

Line 1Line 2Line 3Line 4

基本上是:(

Line 1nLine 2nLine 3nLine 4
假设您没有任何多余的空格,例如制表符,空白)。

在for循环中:

for line in f:
line
is的结尾char
n
(并且
line
您认为
'Line3'
is实际上是
'Line 3n'
)因此您的
if
条件 失败

要删除它,

n
只需使用
str.strip([chars]);
功能。该方法
strip()
返回字符串副本,在该副本中,已从字符串的开头和结尾去除所有字符(默认的空白字符)。

所以,更换

if myline == line:
if myline == line.strip()
是什么// @ CB的答案。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5620208.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存