【发布时间】:2014-02-14 12:56:37
【问题描述】:
LETTERS = "abc"
correct = "cab "
guess = ""
while guess != correct:
for i in LETTERS:
position = random.randrange(len(LETTERS))
guess += LETTERS[position]
LETTERS = LETTERS[:position] + LETTERS[(position + 1):]
print(guess)
我是 Python 新手,我想做这个简单的程序:
- 将字母“abc”混在一起,随机创建一个新的三字母单词。
- 打印杂乱无章的内容
- 继续执行此循环,直到计算机出现“驾驶室”混乱。
- 然后停下来。
我想出了这段代码,它给了我一个无限循环。我不知道为什么要这样做。我确定这很容易,但我看不到。需要一些帮助!谢谢!
【问题讨论】:
-
您的意思是用空格结束您的
correct值吗? -
你的意思是在猜测失败后重新设置?
-
OP 还在 for 循环的每次迭代中更改
LETTERS。需要在 while 循环内立即使用myLetters = LETTERS[:]更改 LETTERS 的副本(并重置guess)
标签: python loops while-loop infinite