Python入门课程:修改程序实现连续重复词终止循环
修正Python循环的连续重复词终止逻辑(不使用列表)
你的代码核心问题是没有跟踪上一次输入的单词,stop变量初始为空且从未更新,导致无法触发连续重复词的终止条件。以下是修正后的代码,完全符合要求且不使用列表:
words = "" previous_word = "" while True: current_word = input("Please type in a word: ") # 终止条件1:输入"end" if current_word == "end": break # 终止条件2:与上一次输入的单词重复 if current_word == previous_word: break # 将有效单词追加到结果字符串 words += f"{current_word} " # 更新上一次输入的单词,用于下一轮对比 previous_word = current_word print(words)
关键修改说明:
- 重命名变量为
previous_word,明确其作用是存储上一次输入的内容,可读性更强 - 在每次处理完有效单词后,更新
previous_word为当前输入的单词,确保下一轮循环能正确对比连续重复的情况 - 优化了输入提示的格式,提升交互体验
测试示例:
- 输入序列:
hello→world→night→night- 循环在第二次输入
night时终止,输出:hello world night
- 循环在第二次输入
- 输入序列:
apple→banana→end- 循环在输入
end时终止,输出:apple banana
- 循环在输入
内容的提问来源于stack exchange,提问作者Dishant Patel
相关产品推荐
相关产品推荐

