一、元祖
特性:
不可变
元祖本身不可变,如果元祖中还包含其他可变元素,这些可变元素可以改变
功能:
index
count
切片
使用场景:
显示的告诉别人,此处数据不可以修改
数据库连接配置信息等
yz = (1, 2, 4, 5, 6) print(yz) # 改变元祖索引值,运行会报错 # yz[1] = 4 # 但是我们可以在元祖中嵌套列表,然后改变列表的值 yz2 = (1, 2, [6, 8], 4, 5, 6) print(yz2) yz2[2][1] = 10 print(yz2)
二、字典
字典是一种key:value的数据类型,使用就像我们上学用的字典,通过笔画、字母来查找对应的详细内容。
特性:
key:value结构
key必须可以hash,且必须是不可变的数据类型,必须唯一
可存多个值,可修改,可以不唯一
无序
查找速度快
三、多级嵌套
![](https://img2022.cnblogs.com/blog/1466820/202207/1466820-20220719180100915-2138366779.png)
四、字典操作
# 增加 info["c#"] = ["fdsfa", "fsd", "fasd"] print(info) # 修改 info["java"] = ["dsfads"] print(info) # 获取值,如果没有找到就返回none表示空 print(info.get("java")) # 判断是否在字典中,是就返回true print("java" in info) # 删除 info.pop("java") print(info) # 删除字典中最后一对键值对 info.popitem() print(info) # del 删除 del info["python"] print(info) info = { "java": ["发生", "发送到", "发斯蒂芬"], "python": ["发斯蒂芬", "发斯蒂芬", "法师的发"], }# 只打印key print(info.keys()) # 只打印value print(info.values()) # 获取key和value print(info.items()) # 合并,将info和info2合并,如果可以相同,value不同的会被info2覆盖 info2 = {1: 2, 2: 4, "java": ["fasdf", "发送到", "发斯蒂芬"]} info.update(info2) print(info2) print(info) # 如果字典有这个值则直接取值,没有则创建 info.setdefault("go", "没有对应的key就赋这个值") print(info) # 批量生成新的字典,fromkeys 方法只用来创建新字典,不负责保存,如果需要保存记得使用变量来接受他 dict = dict.fromkeys(["a", "b", "c"], ["ces", "hfdh", "gdfgs"]) print(dict) # 循环方法一 for k in info: print("只打印keys", k) print("key和value都会打印:", k, info[k]) # 循环方法二 for k, v in info.items(): print(k, v)