繁体   English   中英

为什么我的 for 循环无限期地运行并且在满足 if 条件时不会停止?

[英]Why does my for loop run indefinitely and doesn't stop when the if condition is met?

我正在尝试从文件中读取文本并使用循环从文件中查找特定文本。 文件中的数据逐字垂直列出。 当我运行脚本时,在它打印文件中的最后一个单词后,它会从头开始无限重复。

with open('dictionary.txt','r') as file:
    dictionary = file.read().strip()
for i in dictionary:
 print (dictionary)
 if( i == "ffff" ):
    break

首先将行拆分为"\n"然后print(i)不是print(dictionary)

with open('dictionary.txt', 'r') as file:
    dictionary = file.read().strip().split("\n")
for i in dictionary:
    print(i)
    if i == "ffff":
        break

之前,您应该split行 b/c 它将循环到字符串中并检查字符是否为ffff ,它不会是True

我将是一个单一的角色,所以你应该先做

dictionary = dictionary.split("\n")

但是如果你的ffff是一行,如果是一个用空格分隔的单词,你可以这样做:

dictionary = dictionary.split(" ")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM