0 python
我有5所列出命名l1
,l2
,l3
,l4
和l5
:
l1 = [1,2]
l2 = [3,4]
l3 = [5,6]
l4 = [7,8]
l5 = [9,10]
Run Code Online (Sandbox Code Playgroud)
如果我想创建一个新对象A
作为列表列表,我可以轻松地做到这一点:
A = []
A.append(l1)
A.append(l2)
A.append(l3)
Run Code Online (Sandbox Code Playgroud)
等等......并且A
看起来像这样:
[[1,2],[3,4],[5,6],[7,8],[9,10]]
Run Code Online (Sandbox Code Playgroud)
但是我可以使用for循环来使这更容易吗?
我可以试试吗:
A = []
For q in range(1,6):
temp = 'l' + str(q)
Run Code Online (Sandbox Code Playgroud)
接下来我该怎么办?temp是一个字符串,它基本上将'l'与for循环中的数字连接起来.
所以它看起来像'l1'
,'l2'
,'l3'
但是,如果我使用
A.append(temp)
Run Code Online (Sandbox Code Playgroud)
在循环内部,输出列表看起来像一个字符串列表 ['l1', 'l2', 'l3', ....]
我想我很困惑,因为我不知道如何取一个字符串,然后说,我不想要字符串'l1'
,我想返回变量列表l1
.我猜我想,如果莫名其妙地弄清楚,我曾在一个名为我的全局命名空间中的变量l1
,l2
,l3
一路l10000
,我怎么能写代码来制作新的清单是所有列表的列表l1
,l2
,l3
等向前.
对于5个列表,只需创建一个列表:
A = [l1, l2, l3, l4, l5]
Run Code Online (Sandbox Code Playgroud)
你可以用一个循环来做,但这将是凌乱的.就像是:
A = [ vars()['l'+str(id)] for id in range(1,6) ]
Run Code Online (Sandbox Code Playgroud)
更好的方法是将列表存储在列表或字典之类的内容中.这使他们不受其他变量的影响,因此您可以轻松地将它们作为一个组引用.
归档时间: |
|
查看次数: |
2203 次 |
最近记录: |