Я пишу код, который генерирует случайные числа из определенного диапазона (как показано в первой функции ниже), а затем подсчитывает, сколько раз каждый номер показывал (как это предположительно показано во второй функции). Как применить вторую функцию к списку, который я сделал в первой функции?Как использовать значения внешних переменных в функции?
Мой код:
import random
def create_list(n):
list_size = n
number_list = []
for i in range(list_size):
number = random.randint(1,6)
number_list.append(number)
print number_list
return number_list
my_list = create_list(5)
def count_list(numlist,c):
random_list = numlist
for j in random_list:
times = random_list.count(c)
print times
count_list(["""numbers from number_list"""],1)
count_list(["""numbers from number_list"""],2)
count_list(["""numbers from number_list"""],3)
count_list(["""numbers from number_list"""],4)
count_list(["""numbers from number_list"""],5)
count_list(["""numbers from number_list"""],6)
Как примечание стороны, я не знаю, что ваш 'функция count_list' должна делать, но вот что это _actually_ делает: он перебирает список, установка' times' в число раз ' c' появляется снова и снова. Он забывает все, кроме последнего из этих идентичных назначений, и возвращает последний. Таким образом, вся функция может быть сведена к 'return numlist.count (c)'. – abarnert
... за исключением того, что ваш существующий код вызовет исключение, если 'numlist' пуст, а более простая версия - нет. – abarnert
Сиднейтот: 'random_list = numlist' в вашей функции' count_list() 'бессмысленно. Просто переименуйте параметр «numlist» в «random_list» и удалите эту строку. – rantanplan