【发布时间】:2021-12-29 05:35:16
【问题描述】:
这是我的代码:
wordlist = open('words.txt')
word = input()
i = 0
def loop():
for i in range(466549):
if wordlist.readline().strip() == word:
print(f'found in {i}')
return
else:
print(f"not {wordlist.readline()}")
i = i + 1
loop()
它不仅不返回列表的第一个值,而且它也没有说它找到了我的话。我从 GitHub 得到了我的 words.txt 文件,第二个单词是“1080”。但是当我把它放进去时,它会打印出'not 1080',尽管它显然是。
【问题讨论】:
-
"1080."和"1080"不是一回事。 -
@GreenCloakGuy 我的错,我的意思是把句号放在引号后面。
-
老兄,您将同一变量
i用于 2 个不同的任务。将其中一个更改为另一个字母。 -
代码读取文件有很多问题,可以参考一下教程吗?您还没有关闭文件,并且每个
readline调用消耗 1 行,因此您实际上跳过了每个备用行。当它打印“not 1080”时,这实际上是1080之前的行的错误