Как использовать цикл while с генератором случайных функций в python - PullRequest
0 голосов
/ 08 июля 2019

Мне нужно использовать цикл while с функцией выбора, чтобы завершить случайный выбор определенного элемента в списке

Я успешно вызвал функцию choice () для выбора случайного элемента, но получаю бесконечный цикл при попытке добавить цикл while

from random import *


while choice != 3:

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

    print(choice)

    print('damn!')

Я получаю бесконечный цикл. Мне нужно напечатать все случайно сгенерированные числа, которые не являются условием для завершения цикла while. При достижении условия завершения отображается строка, и программа завершает работу

1 Ответ

5 голосов
/ 08 июля 2019

В вашем коде есть некоторые проблемы.

  1. Имя вашей переменной choice скрывает функцию random.choice , поэтому лучше использовать другое имя переменнойкак my_choice

  2. Вам необходимо присвоить выход choice переменной, чтобы использовать ее.

  3. Вам также следует избегать использования импорта по звездам, т. Е. import *, если вы планируете использовать только одну функцию из модуля (подробнее см. этот вопрос).почему это плохо)

Как только вы сделаете эти изменения, ваш код будет работать нормально

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...