1. 元组的创建
- 注意点:单个元素不是元组类型
# 1. 元组的创建
t1 = ()
print( t1, type(t1) ) # () <class 'tuple'>
t2 = ( 1 )
print( t2, type(t2) ) # 1 <class 'int'>
t3 = ( 1, )
print( t3, type(t3) ) # (1,) <class 'tuple'>
t4 = ( 1, 1e-3, True, [ 1, 2, 3 ] )
print( t4, type(t4) ) # (1, 0.001, True, [1, 2, 3]) <class 'tuple'>
2. 元组的基本特性
元组是不可变数据类型(不可以进行增删改)
# 1. 连接、重复操作符
print( (1, 2) + (1, 2, 3)) # (1, 2, 1, 2, 3)
print( (1, 2) * 3 ) # (1, 2, 1, 2, 1, 2)
# 2. 成员操作符
print( 1 in (1, 2, 3) ) # True
print( 0 not in ( 1, False, [1, 2, 3 ] ) ) # False
# 3. 索引和切片
t = ( 1, 2, 3 )
print( t[0] ) # 1
print( t[-1] ) # 3
print( t[:2]) # (1, 2)
print( t[1:]) # (2, 3)
print( t[::-1]) # ( 3, 2, 1 )
# 4. 查看元组:通过索引和切片查看元素
t = ( 1, 2, 3, 1, 1, 3 )
print(t.index(2)) # 1
print(t.count(1)) # 3
- 注意点:
3. 命名元组
tuple = ( 'westos', '21', '西安' )
print( tuple[0], tuple[1], tuple[2] ) #普通元组需要一个个传值,不方便。引入 ” 命名元组 “
# 命名元组
# 从collections模块中导入namedtuple工具
from collections import namedtuple
# 1. 创建命名元组对象 User
User = namedtuple( 'User', ('name', 'age', 'address') )
# 2. 给命名元组传值
User1 = User('westos', '21', '西安')
# 3. 打印命名元组
print(User1) # User(name='westos', age='21', address='西安')
# 4. 获取命名元组指定的信息
print(User1.name) # westos
print(User1.age) # 21
print(User1.address) # 西安