Создать рандомные числа и присвоить их каждому индексу в списке (Python)
не так давно приступил к изучению пайтона, да и в целом программирования. Пока читал одну из глав книги о списках и кортежах, мне пришла в голову идея: написать код, который будет через библиотеку random генерировать произвольные числа от 0 до 10000. Затем сгенерированное число будет поочередно присваиваться каждому индексу в списке (предположим, что имя у списка будет myList и хранить он в себе будет значения [0, 0, 0, 0, 0]. После всех этих операций значения в списке будут рассортированы через метод sort() и выводиться на экран. Такую задачу я пытался решить, но ничего не получилось. Спасибо за помощь.
import random
myList = [0, 0, 0, 0, 0]
for item in myList:
myList[item] = random.randint(1, 10000)
print(myList)
Ответы (2 шт):
В вашем коде достаточно заменить
for item in myList: --> for item in range(len(myList)):
и все внезапно заработает, вы проходитесь по элементам, а потом вызывает список от элемента, а не от индекса, конечно ничего не работает.
Но вашу задачу проще было бы решить через генератор списков:
my_list = [random.randint(0, 10**4) for i in range(5)]
import random
from random import randint
random_number = [random.randint(0, 10000) for i in range(5)]
print(random_number)
myList = sorted(random_number)
print(myList)