映射类型,高纬,键值对,字典.(字典其实就是包含0个或多个键值对的集合)
键值对之间没有顺序且不能重复(主要指键不能重复,不同键的值可以一样) 键和值可以是任意数量.
字典的查操作
'''
1 get(key, 默认值)根据字典的key获取对应的value值,如果当前查找的key不存在则返回第二个参数(默认值),如果省略第二个参数,则返回None
2 keys()以列表返回一个字典所有的键
3 values()以列表返回字典中的所有值
4 items()以列表返回可遍历的(键, 值) 元组数组
'''
# 1 get(key,默认值)根据字典的key获取对应的value值.如果不存在则返回第二个参数
dict1 = {'name': 'leblanc', 'age': '18', 'gander': 'female'}
print('姓名:', dict1.get('name'))
print('地区:', dict1.get('good', '诺克萨斯'))
# 2/3 keys values
dict2 = {'name': 'leblanc', 'age': '18', 'gander': 'female'}
print(dict2.keys())
print(dict2.values())
# items
dict3 = {'name': 'leblanc', 'age': '18', 'gander': 'female'}
print(dict3.items())
栗子:
# 题干
# 有这样的一个列表
# product=[ {"name":"电脑","price":7000}, {"name":"鼠标","price":30}, {"name":"usb电动小风扇","price":20}, {"name":"遮阳伞","price":50}, ],
# 然后小明一共有8000块钱,那么他能不能买下这所有商品? 如果能,请输出“能”,否则输出“不能”
# 一
product = [{"name": "电脑", "price": 7000}, {"name": "鼠标", "price": 30}, {"name": "usb电动小风扇", "price": 20},
{"name": "遮阳伞", "price": 50}, ]
print(product[0])
print(len(product))
num = 0
for i in range(0, len(product)):
num += product[i].get('price')
# print(num)
if num > 8000:
print('不能')
else:
print('能')
# print(product[i])
# 二
money = 8000
sum = 0 # sum初始化为0,是用来存放总价格
for dict1 in product:
for key, vaule in dict1.items():
if key == 'price':
num += vaule
if money >= sum:
print("能")
else:
print("不能")
字典的增操作
'''
方法:
字典名称[key] = value
注:如果key存在则修改这个key对应的值;如果key不存在则新增此键值对
'''
person = {}
person['name'] = 'leblanc'
person['age'] = 18
person['name'] = 'jhin'
print(person)
字典的改操作
'''
基本语法和添加操作完全一致
字典名称[key] = value
注:如果key存在则修改这个key对应的值;如果key不存在则新增此键值对。
'''
dict1 = {'name': 'leblanc', 'age': '18', 'gander': 'female'}
dict1['name'] = 'jinx'
print(dict1)
字典的删操作
'''
① del 字典名称[key]:删除指定元素
② clear()方法:清空字典中的所有key 返回一个空的字典
'''
person = {'name': 'jhin', 'age': 18, 'gender': {'boy'}}
# del 方法
del person['age']
print(person)
# clear()
person.clear()
print(person)