【问题标题】:How do I use a while loop with a random function generator in python如何在python中使用带有随机函数生成器的while循环
【发布时间】:2019-07-08 18:18:28
【问题描述】:

当随机选择列表中的特定元素时,我需要使用带有选择功能的 while 循环来终止

我已经成功调用了 choice() 函数来选择一个随机元素,但是当我尝试添加一个 while 循环时,我得到了一个无限循环

from random import *


while choice != 3:

    choice([1,2,3,4,5,6])

    print(choice)

    print('damn!')

我得到一个无限循环。我需要打印所有随机生成的数字,这些数字不是终止 while 循环的条件。当达到终止条件时,会显示一个字符串并终止程序

【问题讨论】:

  • 您从未将任何内容分配给choice。顺便说一句,对变量使用与函数名称相同的名称是个坏主意。

标签: python loops while-loop


【解决方案1】:

您的代码中存在一些问题。

  1. 你的变量名choice会影响函数random.choice,所以最好使用另一个变量名,比如my_choice

  2. 您需要将choice 的输出分配给变量才能使用它。

  3. 如果您只打算使用模块中的一个功能,您还应该避免使用星号导入,即import *(查看this 问题以了解有关它为什么不好的更多详细信息)

完成这些更改后,您的代码就可以正常工作了

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-02-06
    • 1970-01-01
    • 2015-12-12
    • 1970-01-01
    • 2017-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多