5-复合类型-dict 字典
复合类型-dict 字典
dict 字典: 字典可以一个或多个成员,也可以没有成员。
data = {}
print(data, type(data)) # {} <class 'dict'>
data = {
"name": "xiaoming",
"age": 16,
"sex": True,
"height": 1.70,
"email": "1234@qq.com",
"friends": [
"xiaobai", "xiaohei"
]
}
print(data, type(data)) # {'name': 'xiaoming', 'age': 16, 'sex': True, 'height': 1.7, 'email': '1234@qq.com'} <class 'dict'>
字典的格式:
data = {
"key": value
}
- 字典的成员叫键值对(key-value),每一个键值对使用英文冒号关联(映射),每一个键值对的后面,除了末尾成员,都要使用英文逗号隔开
- 字典里面的键值对的键(key),必须是不可变的数据类型,value可以是任意的数据类型,key一般在工作中往往使用字符串格式,少数情况下会出现数值,或者元组
- 字典里面的键值对的键(key),在整个字典中是唯一的,如果重复出现,则后面的会覆盖前面
key可以是数值类型(整型、浮点型、布尔型)
data = {
3: "xiaoming",
13: "lixiaoming",
}
key也可以是元组
data = {
(1,2): "xiaoming",
(1,3): "lixiaoming",
}
字典一般用于保存事物的信息,例如:一个人的信息,一个装备的信息,一个道具的信息,一个物品信息等等。
如果要保存多个事物的信息,就可以采用字典作为成员,组成一个列表/元组/集合了。
book_list = [
{"id":1, "name": "浪潮之巅", "price": 89.50},
{"id":2, "name": "人月神话", "price": 109.50},
{"id":3, "name": "代码之髓", "price": 39.50},
]
print(book_list) # [{'id': 1, 'name': '浪潮之巅', 'price': 89.5}, {'id': 2, 'name': '人月神话', 'price': 109.5}, {'id': 3, 'name': '代码之髓', 'price': 39.5}]
字典取值: 字典可以通过key使用中括号来取值
book = {
"price": 9.9,
"title": "西游记后传",
"publish": "人民出版社",
"authors": ["吴承恩", "小明"],
}
print(book["price"]) # 9.9
例如买5本书:
total = book["price"] * 5
print(total) # 49.5
新增一个键值对
book["pubdate"] = "2022-10-01"
print(book) # {'price': 9.9, 'title': '西游记后传', 'publish': '人民出版社', 'authors': ['吴承恩', '小明'], 'pubdate': '2022-10-01'}
也可以对已有的键值对进行修改值
book["price"] = 39.9
print(book) # {'price': 39.9, 'title': '西游记后传', 'publish': '人民出版社', 'authors': ['吴承恩', '小明'], 'pubdate': '2022-10-01'}
也可以使用 in 判断某个key是否存在于字典中
book = {
"price": 9.9,
"title": "西游记后传",
"publish": "人民出版社",
"authors": ["吴承恩", "小明"],
}
print("price" in book) # True
print("pubdate" in book) # False
浙公网安备 33010602011771号