前言
本文为《流畅的python》的2.3节的学习笔记。
元组
代码展示
lax_coordinates = (33.9425, -118.408056)
latitude, longitude = lax_coordinates
print('latitude is:', latitude, '; ', 'longitude is:', longitude)
>>>latitude is: 33.9425 ; longitude is: -118.408056
说明:
元组不仅是不可变列表,还有个作用是记录,元组内每个元素的位置对于元素有特别的意义。以上的元组中第一个参数代表纬度,第二个参数代表经度,同时也是元组拆包的体现。
a=1
b=2
b, a = a, b
print('a is:', a, '; ','b is:', b)
>>>a is: 2 ; b is: 1
说明:
使用元组拆包的方法进行平行赋值,从而不使用中间变量完成两个变量的数值交换。
import os
#os.path.split()返回值为 (path, last_part)形式的元组
_, filename = os.path.split('D:/python/installation/1.pdf')
print(filename)
>>>1.pdf
说明:
当一个函数可以用元组的形式返回多个值时,使用元组拆包的用法,接受这些返回值。对元组里不感兴趣的数据,使用’_’来占位。
a, b, *rest = range(5)
print(a, b, rest)
>>>0 1 [2, 3, 4]
说明:
在元组拆包时使用*来处理剩下的元素,*加变量名来获取不确定数量的参数。
总结
元组常用作不可变列表使用,其还有记录的作用。元组不同元素的位置有不同的意义。通过元组拆包的方法能轻松获取想要的数据。同时记住此方法的一些小技巧(_和*)。