Python有一种一次给多个变量赋值的方法,称为序列解包其形式如下:
>>> x, y, z = 1, 2, 3
>>> print x, y, z
1 2 3
>>>
使用这种方式赋值,相对于一些高级语言如C++,Java等,可以让一些操作很简单:
1. 两个变量交换
>>> x, y = 1, 2
>>> print x, y
1 2
>>> <span style="color:#ff0000;">x, y = y, x</span>
>>> print x, y
2 1
>>>
2. Fibonacci数列的运算
>>> def fib(count):
a, b = 0, 1
l = list()
for i in range(count):
if 0==i:
l.append(a)
else:
l.append(b)
<span style="color:#ff0000;">a, b = b, a+b</span>
return l
>>> l = fib(0)
>>> l
[]
>>> l = fib(1)
>>> l
[0]
>>> l = fib(2)
>>> l
[0, 1]
>>> l = fib(10)
>>> l
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
>>>
当然,与Fibonacci类似的数列预算,也可以使用类似的方法进行编写