当列表中的特定元素被随机选择时,我需要使用带有select函数的while循环来终止
我已经成功调用choice()函数来选择一个随机元素,但是当我尝试添加一个while循环时却遇到了无限循环
from random import *
while choice != 3:
choice([1,2,3,4,5,6])
print(choice)
print('damn!')
我遇到无限循环。我需要打印所有随机生成的数字,这些数字不是while循环终止的条件。当达到终止条件时,将显示一个字符串,程序将终止
答案 0 :(得分:5)
您的代码中存在一些问题。
您的变量名choice
隐藏了函数random.choice,因此最好使用另一个变量名,例如my_choice
您需要将choice
的输出分配给变量才能使用。
如果您仅打算使用模块中的一个功能,也应该避免使用星号导入,即import *
(有关问题的原因,请参见this问题)< / p>
一旦进行了这些更改,您的代码就会正常运行
from random import choice
#Variable to hold choice
my_choice = 0
while my_choice != 3:
#Assign return value of choice
my_choice = choice([1,2,3,4,5,6])
print(my_choice)
print('damn!')
print(my_choice)
示例输出为
5
1
3
damn!
3