提取列表中的所有元素作为单个元素

时间:2016-11-24 16:13:08

标签: python

我想将元素提取为

list = [[1,3], [2,3], [3,4]] becomes
a = [1,3]
b = [2,3]
c = [3,4]

如果列表包含超过26个元素怎么办? 我编写了一个使用集合的函数,我希望该函数也能在这个列表上工作。

3 个答案:

答案 0 :(得分:0)

我不确定您为什么要在变量中存储嵌套的list。相反,我建议使用索引来访问值:

>>> list = [[1,3], [2,3], [3,4]]
#        v list at index `0`
>>> list[0]
[1, 3]

但是,如果嵌套列表中的元素数量是固定的,您可以解压缩列表并将其存储在变量中:

>>> a, b, c  = [[1,3], [2,3], [3,4]]
>>> a
[1, 3]

答案 1 :(得分:0)

python中的任何保留关键字都不能用作变量名。 'list'是python中的保留关键字,因此您不能将其用作变量名。

您可以使用a1,a2,a3来解压缩值,而不是a,b,c。

下面的代码将解压缩列表中的数字。它可以是26或甚至可以更多。

list1 = [[1,3], [2,3], [3,4]]

for i in xrange(0, len(list1)):
    exec("a%d = %s" % (i + 1, repr(list1[i])));

print a1
print a2
print a3

输出:

[1, 3]
[2, 3]
[3, 4]

来源: generating variable names on fly in python

答案 2 :(得分:0)

一个简单的方法是:

list_variable = [[1,3], [2,3], [3,4]]
a, b, c  = list_variable
print(a)
print(b)
print(c)

输出:

[1, 3]
[2, 3]
[3, 4]