如果我事先知道列表的长度,我可以使用序列拆包来为变量分配列表的元素:
my_list = [1,2,3]
x, y, z = my_list
如果我事先不知道列表的长度,如何使用序列拆包将变量分配给列表的元素?如果为了争论的缘故我不关心变量是如何命名的,我可以先获取列表的长度然后解压缩到这个数量的任意命名的变量吗?
请您参考如下方法:
当然不推荐但可能:
my_list = [1, 2, 3]
for counter, value in enumerate(my_list):
exec 'a{} = {}'.format(counter, value)
print a0, a1, a2
输出:
1 2 3
或者使用 Python 3:
>>> a, *rest = my_list
>>> a
1
>>> rest
[2, 3]
