python內建的一種極其強大的生成字典的表示式。返回結果必須是字典
需求1:假設有20個學生,學生的分數在60~100之間,篩選出成績在90分以上的學生
方法一:使用for迴圈生成字典
import random
stu = {}
for i in range(20):
name = 'westos' + str(i)
score = random.randint(60,100)
stu[name] = score
highscore = {}
for name,score in stu.items():
if score > 90:
highscore[name] =score
print(highscore)
方法二:字典生成式
import random
stu = {}
for i in range(20):
name = 'westos' + str(i)
score = random.randint(60,100)
stu[name] = score
print()
需求2:將所有的key值都變成大寫
方法一:for 迴圈
d = dict(a = 1 ,b = 2 )
new_d= {}
for i in d :
new_d [i.upper()] = d[i]
print('n:',new_d)
方法二:字典生成式
d = dict(a=1, b=2)
print()
效果展示
需求3:大小寫的key值合併,統一以小寫輸出
方法一:for迴圈
d = dict(a=1, b=2, c=3, b=9, a=10)
new_d = {}
for k,v in d.items():
low_k = k.lower()
if low_k not in new_d:
new_d[low_k] = v
else:
new_d[low_k] += v
print(new_d)
方法二:字典生成式
d = dict(a=1, b=2, c=3, b=9, a=10)
print()
python 字典生成式
需求1 假設有20個學生,學生名為westosx,學生成績在60 100之間,篩選出成績在90分以上的學生 import random stuinfo 用來存放學生資訊 for i in range 20 將資訊存放到列表裡 name westos str i score random.randin...
Python 字典生成式
題目一 假設有20個學生,名字為westosx,學生分數在60 100之間,篩選出成績在90分以上的學生 一般做法 import random stuinfo for i in range 20 name westos str i score random.randint 60,100 stuinf...
python 字典生成式
案例一 假設有20個學生,名字為westosx,學生分數在60 100之間,篩選出成績 在90分以上的學生 第一種普通方法 第二種字典生成式 import random stuinfo for i in range 20 name westos str i score random.randint ...