`提示:序列可以是元组,列表 ,字典,以及任何可迭代的对象
对1个有很多元素的元组或序列,如果要将各元素的值赋给不同变量,用 x=list[0]; y=list[1] ....
来编写,如果序列很长,这样写法很繁琐,有一种快捷的方式可以完成这项工作
任何可迭代的序列都可以用一句简单的赋值语句,将其元素值拆分给不同变量,但变量列表的个数与序列的长度要匹配
示例如下:
# 快速分列表元素值分配给不同变量 a,b,c,d,e,f,g = list print("a={0} , b = {1} ".format(a,b)) print(e*f)
另1个示例 :
>>> data = [ 'ACME', 50, 91.1, (2012, 12, 21) ] >>> name, shares, price, date = data >>> name
用 * 来表示多个变量,处理序列较长的情形
示例,处理不同的用户记录中,电话号码可能有多个,但不知道多长,变量列表可以用 *phone_numbers 来匹配序列中的电话号码元素,代码如下(示例):
>>> record = ('Dave', 'dave@163.com', '021-2555-1212', '021-1555-1212') >>> name, email, *phone_numbers = user_record >>> name 'Dave' >>> email 'dave@163.com' >>> phone_numbers [' '021-2555-1212', '021-1555-1212'] >>>
另1个示例
>>> items = [1, 10, 7, 4, 5, 9] >>> head, *tail = items >>> head 1 >>> tail [10, 7, 4, 5, 9] >>>