Подсадников А.В., Розов К.В., Русецкий А.В. «Основы программирования на языке Python 3»
import random
n = int(input(
'
Введите количество строк:
'
))
m = int(input(
'
Введите количество элементов в строках:
'
))
a = []
# создаем пустой список
for i in range(n):
row = []
# создаем пустой вложенный список
for i in range(m):
row.append(random.randint(1, 10))
# добавляем список в качестве вложенного
a.append(row)
print(a)
Пример результата выполнения программы:
Введите количество строк: 3
Введите количество элементов в строках: 4
[[9, 10, 8, 4], [9, 3, 9, 5], [1, 4, 10, 9]]
Заполнение двумерного списка генератором
Для создания двумерных списков можно использовать вложенные генераторы,
разместив генератор списка, являющегося строкой, внутри генератора для строк.
Например, сделать список из
n строк и
m столбцов при помощи генератора,
создающего список из
n элементов, каждый элемент которого является списком из
m
нулей:
[[0 for j in range(m)] for i in range(n)]
Но если число 0 заменить на некоторое выражение, зависящее от
i (номер
строки) и
j (номер столбца), то можно получить список, заполненный по некоторой
формуле.
Допустим, нужен список, в котором
n = 5 строк,
m = 6 столбцов, и элемент в
строке
i и столбце
j вычисляется по формуле:
A[i][j] = i * j.
Для создания такого массива можно использовать генератор:
[[i * j for j in range(6)] for i in range(5)]
Достарыңызбен бөлісу: