#简单的字典有key,value 组成比如:
stu_info ={
'username':'xl',
'password': '123456',
'money': 20,
'addr': '上海浦东'
}
d1 = {} # 创建字典
d2 = dict() # 创建空字典
# 添加字典数据 d1['name'] = '胖妞' d1['age'] = 18 d1.setdefault('class', '双子座') print('之前的', d1) d1.setdefault('age', 38) # 已存在的key,无法新增数据,不会修改原来的值 d1['name'] = '胖妞2' # 修改原来的值 print('之后的', d1)
# 修改字典数据 d1['name'] = '胖妞3'
# 取值
print(d1['name']) # key如果不存在 报错 keyError
print("get-->age:", d1.get('age', 0)) # key如果不存在返回None,也加逗号返回默认值
print(d1.keys()) # 取所有keys
print(d1.values()) # 取所有values
# 删除 # d1.pop('name') del d1['class'] # d1.popitem()#随机删除一个key
# d1.clear() #清空
d2 = {"sex": "女"}
d1.update(d2)
print(d1)
|
list1 = [
{
"id": 2,
"name": "矿泉水",
"sex": "未知",
"age": 38,
"addr": "天通苑123",
"grade": "双子座123",
"phone": "12123654311",
"gold": 10
},
{
"id": 5668,
"name": "矿泉水",
"sex": "未知",
"age": 38,
"addr": "天通苑",
"grade": "双子座",
"phone": "12123654564",
"gold": 3202
}
]
#1、统计一下现有学生总共有多少金币
#2、找出金币小于100金币的学生姓名
#3、金币大于500金币,扣除300金币,小于等于100的人,加上200金币
all_gold=0
for user in list1:
gold=user.get('gold')
all_gold+=gold
if gold<=100:
print("%s金币小于100"%user.get('name'))
user['gold'] = gold + 200
if gold>500:
user['gold'] = gold - 300
print(list1)
print(all_gold)