本来是说昨天发的,结果电脑有问题😢,换别人电脑💻发的,太难了呜呜呜

这一篇咱们来讲字典

像 age = 18 或者 age : 18 这种成对出现的数据结构,我们叫做映射(mapping),映射指我们可以用age得到值18。一般将"age"叫做键(key),"18"称为值(value)。整体我们称之为键值对

在Python中保存这种键值对格式的数据的一种类型叫做字典dict。📔

格式:

user_info = {"name" : "hanhan", "age" : 50, "hobby" : ["抽烟", "喝酒", "烫头"]}

字典的key不能是可修改数据类型,例如列表就不能当字典的key。value可以是任意数据类型。

增删改查

增加操作

方法

描述

变量名[key] = value

通过key添加value值,如果key存在则覆盖

setdefault(key, default_value)

如果键不在字典中,将会添加键并将值设置为一个指定值,默认为None

user_info = {"name" : "hanhan"}
user_info["name"] = "cxk"
print(user_info)
# {'name': 'cxk'}

user_info.setdefault("age", 29)
print(user_info)
# {'name': 'cxk', 'age': 29}

user_info.setdefault("school")
print(user_info)
# {'name': 'cxk', 'age': 29, 'school': None}
删除操作

方法

描述

pop

弹出,返回并删除指定键对应的值

popitem

随机弹出一个键值元组

clear

清空字典

popitem 随机的原因是因为字典无序

修改操作

方法

描述

变量名[key] = value

通过key添加value值,如果key存在则覆盖

update

传递一个字典,如果key相同则覆盖,没有的key则创建

user_info = {"name" : "hanhan", "age" : 19}
user_info1 = {"name" : "libai", "weight" : 300}
user_info.update(user_info1)
print(user_info)
# {'name': 'libai', 'age': 19, 'weight': 300}
查找操作

方法

描述

keys

返回一个包含字典所有key的列表

values

返回一个包含字典所有value的列表

get

以键取值,如果指定键不存在,默认返回None,可以指定返回内容

items

返回字典键值呈元组形式

len

测量字典,键值对的个数(整体)

info = {"name" : "hanhan", "age" : 10, "height": 1.78}

name = info["name"]
print(name)   # hanhan

name1 = info.get("name")
print(name1)   # hanhan
name2 = info.get("aa", "default")
print(name2)   # default

keys = info.keys()
print(keys)   # dict_keys(['name', 'age', 'height'])

values = info.values()
print(values)   # dict_values(['hanhan', 10, 1.78])

items = info.items()
print(items)   # dict_items([('name', 'hanhan'), ('age', 10), ('height', 1.78)])

print(len(info))   # 3

我们可以用for…in… 来遍历字典,也可以用not in/ in 来判断指定键是否在字典中。

info = {"name" : "hanhan", "age" : 10, "height": 1.78}

if "name" in info:
    print("name in")
else:
    print("name not in")
# "name in"


if "age" not in info:
    print("age not in")
else:
    print("age in")
# "age in"

##################################
#遍历

# 获取所有的key
for key in info:
    print(key)

for key in info.keys():
    print(key)
# 上面两个结果一样
# name
# age
# height



# 获取所有的value
for value in info.values():
    print(value)
# hanhan
# 10
# 1.78


for item in info.items():
    print(item)
# ('name', 'hanhan')
# ('age', 10)
# ('height', 1.78)


for k, v in info.items():
    print(k, v)
# name hanhan
# age 10
# height 1.78

我们可以通过dict() 来创建一个空字典、或者通过列表+元组的形式或者元组+元组的形式创建一个字典,或者通过关键字来创建一个字典。

dict1 = dict()
print(dict1)
# {}

dict2 = dict({"name" : "han", "age" : 19})
print(dict2)
# {'name': 'han', 'age': 19}


dict3 = dict([("name", "han"), ("age", 19)])
print(dict3)
# {'name': 'han', 'age': 19}


dict4 = dict(name = "han", age = 16)
print(dict4)
# {'name': 'han', 'age': 19}

字典这一章的知识比较干,没什么好说的,还是多敲代码,记住才行。

感谢支持,您的支持就是我的动力💕