一、元祖
特性:
不可变
元祖本身不可变,如果元祖中还包含其他可变元素,这些可变元素可以改变
功能:
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,且必须是不可变的数据类型,必须唯一
可存多个值,可修改,可以不唯一
无序
查找速度快
 
三、多级嵌套

 

 

四、字典操作
# 增加
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)

 

posted on 2022-07-19 18:02  时光以北暮南城  阅读(47)  评论(0编辑  收藏  举报