我需要用列表的内容制作一些列表。像一个:
list=["One", "Two", " Three "]
for x in list:
x = []
但它不起作用,因为如果我这样做:
list(One)
它没有显示One的内容,因为One未定义。
那么,是否可以创建包含其他列表内容的列表?
答案 0 :(得分:5)
我们期望输出有三个列表。一个= [];两个= []和三个= []
使用字典:
i = ['One', 'Two', 'Three']
d = {} # empty dictionary
for n in i:
d[n] = []
>>> print(d['One'])
[]
答案 1 :(得分:1)
你在找这个吗?
list = []
for i in range(listLength):
list.append([])
这将为listLength of 3生成如下列表:
list = [[], [], []]
答案 2 :(得分:0)
使用字典理解
>>> l = ['One', 'Two', 'Three']
>>> {key: [] for key in l}
{'Three': [], 'Two': [], 'One': []}
答案 3 :(得分:0)
我认为使用zip
更好更容易。
list_ = ['One', 'Two', 'Three']
a = dict(zip(list_, [[] for _ in range(len(list_))]))
print a
#{'Three': [], 'Two': [], 'One': []}
zip
可以为列表的每个元素分配空列表。
答案 4 :(得分:-1)
您是否希望创建如下所示的列表列表?
One = [1,2,3]
Two = [4,5,6]
Three = [7,8,9]
list = [One,Two,Three]
答案 5 :(得分:-2)
这样的事情对你有用吗?
>>> keys = ['one', 'two', 'three']
>>> for k in keys:
... globals()[k] = []
...
>>> one
[]
>>> two
[]
>>> three
[]
还记得列表是一个保留字,所以不是一个好的变量名
并不是说这是一件好事,但听起来就像你要求的那样。