字典生成式和列表生成式很类似,下面用几个例题来对其进行理解:
1. 假设有20个学生,成绩在[60,100]之间,筛选并打印出90分以上的学生序号:
## 第一步,我们先模拟出班级中20个学生的成绩:
import random
d1 = {}
for i in range(1, 21):
name = 'westos' + str(i) ## 学生班级序号
score = random.randint(60, 100) ## 随机产生分数
d1[name] = score
print(d1)
## 第二步,用字典生成式筛选并打印出90分以上学生的班级序号:
d2 = {name for name,score in d1.items() if score >= 90}
print(d2)
运行结果;
2. 将字典d1中的所有key值转化为大写,d1 = dict(a=1, b=2):
##