1-4-06 数据类型-元组(tuple)

1. 定义

列表(list),是一个有序可变的容器,在里面可以存放多个不同类型的元素。列表,以后写程序会用的非常多,要多些多练。

元组(tuple),是一个有序不可变的容器,在里面可以存放多个不同类型的元素。元组,以后写程序用的不是很多,主要以了解其特殊和用法为主。

如何体现不可变呢? 记住一句话:《"我儿子永远不能换成是别人,但我儿子可以长大"》

v1 = (11,22,33)
# 建议:议在元组的最后多加一个逗v3 = ("李杰","Alex",)

注意:建议在元组的最后多加一个逗号,用于标识他是一个元组。

# 面试题
1. 比较值 v1 = (1) 和 v2 = 1 和 v3 = (1,) 有什么区别?
2. 比较值 v1 = ( (1),(2),(3) ) 和 v2 = ( (1,) , (2,) , (3,),) 有什么区别?
              (1,2,3)

2. 独有功能

3. 公共功能

1.相加

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

data = ("赵四","刘能") + ("宋晓峰","范德彪")
print(data) # ("赵四","刘能","宋晓峰","范德彪")

2. 相乘

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

data = ("赵四","刘能") * 2
print(data) # ("赵四","刘能","赵四","刘能")

3. 获取长度

user_list = ("范德彪","刘华强",'尼古拉斯赵四',)
print( len(user_list) )

4. 索引

user_list = ("范德彪","刘华强",'尼古拉斯赵四',)
print( user_list[0] )

5. 切片

user_list = ("范德彪","刘华强",'尼古拉斯赵四',)
print( user_list[0:2] )

6. 步长

user_list = ("范德彪","刘华强",'尼古拉斯赵四',"宋小宝","刘能")
print( user_list[1:4:2] )
# 字符串 & 元组。
user_list = ("范德彪","刘华强",'尼古拉斯赵四',"宋小宝","刘能")
data = user_list[::-1]

# 列表
user_list = ["范德彪","刘华强",'尼古拉斯赵四',"宋小宝","刘能"]
data = user_list[::-1]

user_list.reverse()
print(user_list)

7. for循环

目前:只有 str、list、tuple 可以被for循环。 "xxx" [11,22,33] (111,22,33)

# len + range + for + 索引
user_list = ("范德彪","刘华强",'尼古拉斯赵四',"宋小宝","刘能")
for index in range(len(user_list)):
    item = user_list[index]
    print(item)

4. 转换

其他类型转换为元组,使用tuple(其他类型),目前只有字符串和列表可以转换为元组。

data = tuple(其他)

# str / list 

5. 其他

2.5.1 嵌套

由于元组和列表都可以充当容器,他们内部可以放很多元素,并且也支持元素内的各种嵌套。

tu = ( '今天姐姐不在家', '姐夫和小姨子在客厅聊天', ('姐夫问小姨子税后多少钱','小姨子低声说道说和姐夫还提钱') )
tu1 = tu[0]
print(tu1) # 今天姐姐不在家
posted @ 2022-10-19 09:16  布丁家的苏苏  Views(10)  Comments(0)    收藏  举报