Подтвердить что ты не робот

Как я могу сделать несколько пустых массивов в python?

Как я могу сделать много пустых массивов без ввода вручную

list1=[] , list2=[], list3=[]

Есть ли цикл for, который сделает меня "n" числом таких пустых массивов?

4b9b3361

Ответ 1

Упорядочение списка проще всего:

>>> n = 5
>>> lists = [[] for _ in range(n)]
>>> lists
[[], [], [], [], []]

Будьте осторожны, чтобы не попасть в ловушку:

>>> lists = [[]] * 5
>>> lists
[[], [], [], [], []]
>>> lists[0].append(1)
>>> lists
[[1], [1], [1], [1], [1]]

Ответ 2

Если вы хотите создать разные списки без "списка списков", попробуйте следующее:

list1, list2, list3, list4 = ([] for i in range(4))

Ответ 3

Поиск список понятий

listOfLists = [[] for i in range(N)]

Теперь listOfLists имеет N пустых списков в нем

Другие ссылки на списки:

1 2 3

Надеюсь, что это поможет

Ответ 4

Как насчет этого.

def mklist(n):
    for _ in range(n):
        yield []

Использование:

list(mklist(10))
[[], [], [], [], [], [], [], [], [], []]

a, b, c = mklist(3) # a=[]; b=[]; c=[]

Ответ 5

Вы также можете добавить список списка списка... как это тоже. Он не вернет никаких ошибок. Но я понятия не имел, для чего он используется.

n = 5 
>>> lists = [[[]]] for _ in range(n)]
>>> lists
   [[[[]]], [[[]]], [[[]]], [[[]]], [[[]]]]

Ответ 6

Извините, что я опаздываю на два года, но, возможно, я могу помочь другим людям.

Приведенный ниже код будет динамически "создавать". Для каждой итерации выдается следующая команда:

list номер= []

Где число - значение я в цикле.

x = 3 # amount of lists you want to create
for i in range(1, x+1):
    command = "" # this line is here to clear out the previous command
    command = "list" + str(i) + " = []"
    exec(command)

Результатом этой конкретной части кода является три переменные: list1, list2 и list3 создаются, и каждому присваивается пустой список.

Вы можете обобщить это, чтобы сделать практически все, что захотите. Обратите внимание, что вы не можете поместить это в функцию, насколько я знаю, из-за того, как работают переменные и глобальные переменные.

name = "my_var" # This has to be a string, variables like my_var1, my_var2 will be created.
value = "[]" # This also has to be a string, even when you want to assign integers! When you want to assign a string "3", you'd do this: value = "'3'"
amount = 5 # This must be an integer. This many variables will be created (my_var1, my_var2 ... my_var5).

for i in range(1, amount+1):
    command_variable = ""
    command_variable = name + str(i) + " = " + value
    exec(command_variable)

Надеюсь, я помог!