一、Python四大容器类型
除字符串、数值外,Python有4种可以存放多条数据的内置容器:
元组(tuple)、列表(list)、集合(set)、字典(dict)
共同点:一个变量名下,可以存放多条数据。
二、不可更改的序列
- 标识:使用圆括号
()包裹数据 - 核心特性:元组是不可变类型,创建完成后不能修改里面的元素
1)基础创建与访问
# 定义元组
words = ("doctor","gun","time")
# 格式化输出
print("这个单词是%s" % words[0]) # 取第1个元素,下标从0开始
print("这个单词是%s" % words[1]) # 第二个
print("这个单词是%s" % words[2]) # 第三个Code language: PHP (php)
下标索引从
0开始:0,1,2...
2)格式化输出元组
# %格式化,%后面直接放元组
print("you %s %s %s %s" % ("are","my","friend","."))Code language: PHP (php)
3)len() 获取元组长度
words = ("doctor","gun","time")
print(len(words)) # 输出 3
# 获取元组最后一个元素
print(words[len(words)-1]) # 输出 timeCode language: PHP (php)
4)嵌套元组
元组里面的元素,可以是另一个元组,实现嵌套。
words = ("doctor","gun","time")
english = (words, "honey")
# 多层索引访问
print(english[0]) # ('doctor', 'gun', 'time')
print(english[0][0]) # doctor
print(english[0][2]) # time
print(english[1]) # honey
# 把嵌套里的元组取出赋值
myenglish = english[0]
print(myenglish[0]) # doctorCode language: PHP (php)
重点:只有单个元素的元组
如果元组只有1个元素,必须在元素后面加逗号
,
# 正确:逗号,才代表这是元组
your_words = ("one",)
# 错误!没有逗号,("one") 等价于字符串 "one",不是元组
your_words = ("one")Code language: PHP (php)
- 不加逗号:
("one")Python会把括号当成普通括号,变量类型是字符串,不是元组。 - 加逗号:
("one",)才真正创建只有一个成员的元组。
总结
- 符号:圆括号
() - 不可变:创建之后,元素不能修改、不能新增、不能删除
- 索引:下标从0开始取值
tuple[0] - 支持嵌套:元组里面可以存放元组,
tuple[0][1]多层取值 - 单元素元组,末尾必须写逗号
(值,) len(元组):获取元组里面元素总个数