字典

字典的key和value一一对应的,字典是可变的,也是有序的(python3.6版本开始字典有序),可迭代的
 

增加元素

当key不存在时,直接赋值

a = {"status": 200}
a["message"] = "成功"
print(a)
>>> {'status': 200, 'message': '成功'}

 

删除元素

del 字典名[key]

a = {"status": 200, "message": "成功"}
del a["status"]
print(a)
>>> {'message': '成功'}

 

查看元素

当key存在时,字典[key]

a = {"status": 200, "message": "成功"}
print(a["status"])
>>> 200

 

get(key[, default])

a = {"status": 200, "message": "成功"}
print(a.get("status"))
>>> 200

 

字典的3个方法:keys、values、items
a = {"status": 200, "message": "成功"}
print(a.keys())
print(a.values())
print(a.items())
>>> dict_keys(['status', 'message'])
        dict_values([200, '成功'])
        dict_items([('status', 200), ('message', '成功')])

# 直接获取字典中的key和value可以使用以下方法
a = {"status": 200, "message": "成功"}
for key, value in a.items():
    print(key, value)
>>> status 200
        message 成功

 

zip函数

zip()函数将两个可迭代对象打包成元组

print(dict(zip([101, 102, 103], ['张三', '李四', '王五'])))
>>> {101: '张三', 102: '李四', 103: '王五'}

 

字典推导式
a = {"status": 200, "message": "成功"}
print({k: v for k, v in a.items()})
>>> {'status': 200, 'message': '成功'}

 

补充知识

字典中,setdefault与get的区别
get 和setdefault区别是在于这个key不存在然后对字典是否造成影响(是否添加新的键值对)

  • setdefault:如果key值不存在,那么会把这个键值对添加到字典中
  • get:如果key不存在,那么对dict无任何影响