元组 tuple

一、Python四大容器类型

除字符串、数值外,Python有4种可以存放多条数据的内置容器:
元组(tuple)、列表(list)、集合(set)、字典(dict)
共同点:一个变量名下,可以存放多条数据。

二、不可更改的序列

  1. 标识:使用圆括号 ()包裹数据
  2. 核心特性:元组是不可变类型,创建完成后不能修改里面的元素
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",) 才真正创建只有一个成员的元组。

总结

  1. 符号:圆括号 ()
  2. 不可变:创建之后,元素不能修改、不能新增、不能删除
  3. 索引:下标从0开始取值 tuple[0]
  4. 支持嵌套:元组里面可以存放元组,tuple[0][1]多层取值
  5. 单元素元组,末尾必须写逗号 (值,)
  6. len(元组):获取元组里面元素总个数

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注