1、元组中包含数量和位置信息。
traveler_ids=[('USA','12345'),('EUR','231231'),('CHN','23333')]
for passport in sorted(traveler_ids): #数量信息
print('%s/%s'%passport)
for country,_ in traveler_ids: #位置信息
print(country)
CHN/23333
EUR/231231
USA/12345
USA
EUR
CHN
for循环可以分别提取元组中的元素,即拆包(unpacking)。由于元组中第二个元素不重要,可以用 _ 代替。
2、元组拆包与平行赋值(parallel assignment)
a,b=b,a
可以用*把一个可迭代的对象拆开作为函数的参数。其他如列表应该也可以
t=(20,8)
q=[20,8]
print(divmod(*t))
print(divmod(*q))
(2, 4)
(2, 4)
用*arg来获取不确定数量的参数
a,b,*rest=range(5)
a,b,*rest
(0, 1, 2, 3, 4)
a,b,rest
(0, 1, [2, 3, 4])
3、格式化输出