如何创建request.GET.get('state')
循环变量确定的尽可能多的空列表?
如:
for
在for i in range(3):
list_{i} = [] #this is just an idea
循环的结尾,我将拥有:
for
我是Python的新手,所以如果这个问题是重复的,请告诉我,但我还没有发现有相同需求的任何问题。
答案 0 :(得分:2)
lists_= [[] for i in range(3)]
print(lists_)
输出:
[[], [], []]
,然后,如果您要将元素添加到特定列表_:
lists_[0].append(1)
lists_[0].append(2)
lists_[0].append(3)
print(lists_[0])
输出:
[1, 2, 3]
编辑:
由于OP提到range
是有条件的:
cond_1 = False
if cond_1:
x = 3
else:
x = 2
lists_= [[] for i in range(x)]
print(lists_)
输出:
[[], []]
[1, 2, 3]
答案 1 :(得分:1)
1。您可以使用for循环以另一种方式创建列表列表
>>> pool = []
>>> for i in range(3):
>>> pool.append([])
2。您可以动态创建
>>> pool = [[] for i in range(3)]
3。但是,如果要指定名称,maby最好将它们存储在字典中
>>> pool = dict([(i, []) for i in range(3)])
输出将是:
>>> pool
{0: [], 1: [], 2: []}
4。具有可读名称的相同示例
>>> pool = dict([(i, []) for i in ['list1', 'list2', 'list3']])
该示例中的输出将是:
>>> pool
{'list1': [], 'list3': [], 'list2': []}
答案 2 :(得分:1)
通过列表理解:
lst = [[] for i in range(3)]
或通过.append()
:
lst = list()
for i in range(3):
lst.append([])
print(lst)
答案 3 :(得分:1)
尝试一下:
for i in range(3):
globals()[f'list_{i}'] = [] # Only Python3.6 or higher
对于低于3.6的python:
for i in range(3):
globals()['list_{}'.format(i)] = []
那么您将拥有list_0
,list_1
和list_2
等于[]
。