我有以下列表清单:
list_sample = [[0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6], [0.021, 0.021, 0.021, 0.021, 0.021, 0.021, 0.021], [0.022, 0.022, 0.022, 0.022, 0.022, 0.022, 0.022],...]
我想提取每个列表并将其归因于另一个列表,例如:
for i,line in enumerate(list_sample):
if i==0:
Z_level=line
if i==1:
XD1=line
if i==2:
XD2=line
.....
有没有办法让这个更有效率?感谢
答案 0 :(得分:4)
或(补充RobEarl)回答,
Z_level, XD1, XD2, ... = list_sample
但是,如果您不知道list_sample有多大,则需要查找如何在python中动态设置变量。您可以查看部分here
答案 1 :(得分:3)
如果我读得正确,你想把第一个子列表分配给Z_level,第二个子列表分配给XD1 ...
Z_level, XD1, XD2 ... = list_sample
如果您只想分配3件事:
Z_level, XD1, XD2 = list_sample[:3]
答案 2 :(得分:2)
不需要循环:
Z_level = list_sample[0]
XD1 = list_sample[1]
XD2 = list_sample[2]
...
答案 3 :(得分:2)
无限,试试这个......
for i,line in enumerate(list_sample):
if i == 0:
vars()["Z_level"] = line
continue
vars()["XD"+str(i)] = line
这只是为了好玩,但你应该不使用它,请阅读@defuz和@DSM关于原因的评论。
这可能是一个更好的解决方案:
lists = {}
for i,line in enumerate(list_sample):
if i == 0:
lists["Z_level"] = line
continue
lists["XD"+str(i)] = line