@teddysto

Как вывести разные вложенные списки в списке?

Как вывести разные вложенные списки в списке? Выводит всегда 3 одинаковых списка
import random

list = []
lst = []

for i in range(3):
    random_number = random.randint(1, 10)
    lst.append(random_number)
    list.append(lst)


print(list)
  • Вопрос задан
  • 109 просмотров
Пригласить эксперта
Ответы на вопрос 4
Linq
Ответ написан
Комментировать
bravebug
@bravebug
цикл 3 раза делает следующее:
* генерирует случайное число от 1 до 10
* добавляет это число в список lst
* добавляет ссылку на список lst в список list

Т.к. список в python - это изменяемый тип данных, добавленные в список lst данные отображаются по всем ссылкам на объект этого списка.
Ответ написан
Комментировать
aRegius
@aRegius
Python Enthusiast
list.append(lst[:])
Только название переменной list поменяйте.
Ответ написан
Комментировать
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
print([[random.randint(1, 10) for i in range(3)] for j in range(3)])

[[5, 2, 3], [5, 1, 6], [5, 2, 9]]
Или
print([[random.randint(1, 10)] for i in range(3)])
[[4], [7], [6]]
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы