python 元组

对比:

  列表(list),是一个有序可变的容器,在里面可以存放多个不同类型的元素

  元组(tuple),是一个有序切不可变的容器,在里面可以存放多个不同类型的元素

  # 注意:不可变理解,如果元组下的直接元素是不可变(int,str,bool,tuple)的那么不可变;如果直接元素是列表,那么该列表可变

1.定义:

v1 = (11,22,33)
v3 = (True,123,"abc",[11,22,33,44])

# 注意,建议在元组最后多加一个逗号,例如(1,) (2,3,4,)

# 否则的话, (1) 等同于整型1

# v1 = (1,)  # (1,)

# v1 = (1)  # 1

2.元组独有功能:

3.元组公共功能:

3.1相加,两个列表相加获取生成一个新的列表

data = ('aa', 'bb') + ('aa', 'cc')  # ('aa', 'bb', 'aa', 'cc')

3.2相乘,列表*整型 将列表中的元素再创建N份并生成一个新的列表

data = ('aa', 'bb') * 2  # ('aa', 'bb', 'aa', 'bb')

3.3获取长度

data = ('aa', 'bb')

len(data) # 2

3.4索引

data = ('aa', 'bb')

data[0]  # 'aa'

data[2]  # 报错,超出索引报错

3.5切片

data = ('aa', 'bb', 'cc')

print(data[0:2] )
print(data[1:] )
print(data[:-1] )

3.6步长

data = ('aa', 'bb', 'cc')

print( data[0::2] )
print( data[1::2] )
print( data[2:1:-1] )

# 注意

# 字符串 & 元组的翻转

user_list = ("a","b",'1',"2","3")
data = user_list[::-1]

# 列表 的翻转

user_list = ["a","b",'1',"2","3"]
data = user_list[::-1]

user_list.reverse()
print(user_list)

3.6 for循环

data = ('aa', 'bb', 'cc')

for char in data:

  print(char)

# 注意:只有以下几种数据类型 str、list、tuple、set、dict可以被for循环

# 1理解,元组的不可变

example:

data = ("123",666,[11,22,33], ("a","李",[999,666,(5,6,7)]) )

# 1.将 “123” 替换成 9 报错

# 2.将 [11,22,33] 换成 "流年" 报错

# 3.将 11 换成 99
data[2][0] = 99
print(data) # ("123",666,[99,22,33], ("a","李",[999,666,(5,6,7)]) )

# 4.在列表 [11,22,33] 追加一个44
data[2].append(44)
print(data) # ("123",666,[11,22,33,44], ("a","李",[999,666,(5,6,7)]) )

# 2理解,元组的不可变

li = ["alex", [11,22,(88,99,100,),33], "W", ("ritian", "barry",), "wenzhou"]
# 0 1 2 3 4

# 1.请将 "W" 修改成 "武"
li[2] = "武沛齐"
index = li.index("W")
li[index] = "武"

# 2.请将 ("ritian", "barry",) 修改为 ['日天','日地']
li[3] = ['日天','日地']

# 3.请将 88 修改为 87
li[1][2][0] = 87 # (报错,)

# 4.请将 "wenzhou" 删除,然后再在列表第0个索引位置插入 "周周"
# li.remove("wenzhou")
# del li[-1]
li.insert(0,"周周")

posted @   夜落繁华时  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示