python 字典的一些用法

# -*- coding=utf-8 -*-
# Author:gx

info = {
"stu001":"xiao ming",
"stu002":"xiao gou",
"stu003":"xiao hu",
}

print(info) #查看整个列表
print(info["stu001"]) #查看列表中stu001键对应的值
print(info.get("stu004"))#查看stu004,不存在返回None
info["stu001"] = "小明" #修改
print(info)
info["stu004"] = "letme" #增加
print(info)

#删除
#del info["stu001"]
info.pop("stu001")
info.popitem() #随机删除
print(info)

#判断是在
print("stu002" in info)

print(info.values()) #打印所有的值
print(info.keys()) #打印所有的键

info.setdefault("stu002","karsa") #字典中存在则不变,不存在则新增
print(info)

#两个字典的融合,有键相同的则更新掉
info1 = {
"stu002":"LangX",
1:2,
3:4
}
info.update(info1)
print(info)


print(info.items()) #字典转列表

a = dict.fromkeys([6,7,8],"test") #列表转字典
print(a)
a[7] = "test2"
print(a)

b = dict.fromkeys([6,7,8],[1,{"name":"axiang"}])
print(b)
b[7][1]["name"] = "ax"
print(b)
#a和b对比之后可能大家会有疑问,其原因是字典“[1,{"name":"axiang"}]”中的{"name":"axiang"}指向的是一个内存地址,
# 内容变换不会地址的变换从而导致a和b看起来存在差异

#字典的循环,第一种循环高效,第二种会将字典转列表,再循环打印,效率差
for i in info:
print(i,info[i])

for k,v in info.items():
print(k,v)
原文地址:https://www.cnblogs.com/axiangstudy/p/13648918.html