创建
定义空元组
tuple = ()
定义单个值的元组
tuple = (fentiao,)
一般的元组
tuple = (fentiao, 8, male)
增删改(不是真的修改)
不能对元组的值任意更改
但是可以用切片的方法间接实现增删改,但是注意,不是真正意义上的修改,是新建
eg:
特性
多元赋值机制
x, y, z = 1, 2, ‘westos’ 等价于 (x, y, z) = (1, 2, ‘westos’) , 等号两边的对象都是元组并且元组的小括号是可选的。
注:不光是元组,只要可迭代的对象都可以多元赋值
Python3中*x位于列表或元组中可接受多个数据(元组不可缺少的是“,”,不是小括号,如:1, 2 等价于 (1, 2))
eg:
环境变量交换
实现机制:
1). 构造一个元组(y, x);
2). 构造另一个元组(x, y);
3). 元组(y, x)赋值给(x, y),元组赋值过程从左到右,依次进行
eg:
内置方法
定义命名元组类与应用
- 命名元组是一个类,有两种方式来定义命名元组
- 实例化命名元组,获得类的一个实例
- 访问命名元组: 通过逗号运算符和属性名来访问元组字段的值
- 类属性 _fields:包含这个类所有字段名的元组
- 类方法 _make(iterable):接受一个可迭代对象来生产这个类的实例
- 实例方法_replace():用于修改实例的属性(不改变原来的具名元组,而是会返回一个新的具名元组)
eg: