#python #python_3x
Как получить переменную name как глобальную? import random fruits = ('яблоко', 'абрикос', 'авокадо', 'банан', 'кокос', 'инжир') def fruitName(): rand = random.randint(0,6) name = fruits[rand] print(name) Понимаю, что вопрос достаточно глупой, но я только начала изучение программирования.
Ответы
Ответ 1
Для этого Вы можете воспользоваться инструкцией global, например: global name name = fruits[rand] Возьмите на заметку! Использовать глобальные переменные - ужасное архитектурное решение. Если есть возможность избегать их - это обязательно нужно сделать. Лучше сделать так: import random def get_rand_fruit(fruits: list) -> str: rand_fruit = random.choice(fruits) return rand_fruit fruits = ('яблоко', 'абрикос', 'авокадо', 'банан', 'кокос', 'инжир') name = get_rand_fruit(fruits) print(name)Ответ 2
В данном случае стоит воспользоваться готовой функцией random.choice() вместо написания своей функции: import random fruits = ('яблоко', 'абрикос', 'авокадо', 'банан', 'кокос', 'инжир') примеры: In [105]: random.choice(fruits) Out[105]: 'кокос' In [106]: random.choice(fruits) Out[106]: 'авокадо' In [107]: random.choice(fruits) Out[107]: 'инжир'Ответ 3
Прислушайтесь к советам по поводу использования глобальных переменных Обратите внимание на аргументы метода randint - обе границы инклюзивны. import random fruits = ('яблоко', 'абрикос', 'авокадо', 'банан', 'кокос', 'инжир') def fruitName(fruits: list): rand = random.randint(0,5) # <--- здесь name = fruits[rand] return name print(fruitName(fruits))
Комментариев нет:
Отправить комментарий