两个变量,我想解开一个函数的返回到:如何解压目录到python2.x
总是第一个返回值设置一个第一可变
一第二个变量来存储任何超出的返回值
这样做,我有这段代码在python3.x下工作。我怎么能使它与python 2.x(至少python2.6)?
a,*b = ['a','b','c']
编辑:这也将一起工作:
a,*b = ['a']
两个变量,我想解开一个函数的返回到:如何解压目录到python2.x
总是第一个返回值设置一个第一可变
一第二个变量来存储任何超出的返回值
这样做,我有这段代码在python3.x下工作。我怎么能使它与python 2.x(至少python2.6)?
a,*b = ['a','b','c']
编辑:这也将一起工作:
a,*b = ['a']
有没有直接的方法在Python 2.7要做到这一点,相反,您可以创建一个没有第一个元素和第一个元素的新列表,并将它们解压到相应的变量中。
data = ['a','b','c']
a, b = data[0], data[1:]
print a, b
输出
a ['b', 'c']
这个解决方案仍然可以工作,即使RHS只有一个元素
data = ['a']
a, b = data[0], data[1:]
print a, b
输出
a []
使用切片:
>>> lis = ['a','b','c']
>>> a, b = lis[0], lis[1:]
>>> a
'a'
>>> b
['b', 'c']
谢谢。我的问题并不精确。看我的编辑部分。 – Sigmun
@Sigmun请检查我的最新答案。 – thefourtheye