Python容器 - 字典

常用操作

dict的key不能重复,不能为可变值;value可以重复 

 

基本使用

dict1 = {
    "key1": 1,
    "key2": 2,
    "key3": 3,
}
print(type(dict1))  # <class 'dict'>
print(type(dict1) == dict)  # True
print(isinstance(dict, dict))  # False
print(len(dict1))  # 3
print(dict1)  # {'key1': 1, 'key2': 2, 'key3': 3}

# 访问元素
print(dict1["key1"])  # 1
# print(dict1["key4"])  # key不存在会抛异常
print(dict1.get("key4"))  # None, key不存在返回默认值

# 添加元素(不存在的key)
dict1["key4"] = 4
print(dict1)  # {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 4}
print(len(dict1))  # 4

# 修改元素(已存在的key)
dict1["key3"] = 30
print(dict1)  # {'key1': 1, 'key2': 2, 'key3': 30, 'key4': 4}

# 删除元素
del dict1["key4"]
print(dict1)  # {'key1': 1, 'key2': 2, 'key3': 30}

elem = dict1.pop("key3")
print(dict1)  # {'key1': 1, 'key2': 2}
# elem = dict1.pop("key6")  # 删除不存在的key会抛异常

# 查找key
print("key1" in dict1)  # True
print("key4" in dict1)  # False

 

遍历

dict1 = {
    "key1": 1,
    "key2": 2,
}
# 遍历
for k in dict1:
    print(k, dict1[k])

for k, v in dict1.items():
    print(k, v)

print(dict1.keys())  # dict_keys(['key1', 'key2'])
print(dict1.values())  # dict_values([1, 2])
print(dict1.items())  # dict_items([('key1', 1), ('key2', 2)])

 

其他

list1 = ["a", "b", "c"]
dict1 = dict.fromkeys(list1, 1)  # list元素作为key创建dict, 所有键的值填充为1
print(dict1)  # {'a': 1, 'b': 1, 'c': 1}

 

posted @ 2023-07-21 00:33  yanghui01  阅读(7)  评论(0)    收藏  举报