我們已經(jīng)知道,List 和 tuple 可以用來表示順序集合,例如,班里同學(xué)的名字:
['Alice', 'Bob', 'Candy', 'David', 'Ellena'] # List
('Alice', 'Bob', 'Candy', 'David', 'Ellena') # tuple
或者考試的成績:
[45, 60, 75, 86, 49] # list (45, 60, 75, 86, 49) # tuple
如果同學(xué)名字的列表和同學(xué)成績的列表是一一對應(yīng)的,那么通過下標(biāo),我們也可以找到每個同學(xué)的成績。
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
scores = [45, 60, 75, 86, 49]
index = 0
for name in names:
score = scores[index]
print('name = {}, score = {}'.format(name, score))
index = index + 1
事實上,我們可以得到這樣的映射。
'Alice' ==> 45 'Bob' ==> 60 'Candy' ==> 75 'David' ==> 86 'Ellena' ==> 49
但是使用兩個list,始終有些麻煩的,尤其是需要變換一個列表的順序后,另外一個列表也需要做同樣的變換,否則就可能出現(xiàn)對應(yīng)不上的問題。
python的dict就是專門保存這種映射的,使用dict可以方便的保存“名字”->“成績”的映射。
在dict中,每一項包含一個key和一個value,key和value是一一對應(yīng)的,在解決上面的問題中,我們可以使用名字作為key,成績作為value,那么dict的定義如下:
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
在定義里,我們使用花括號{}表示這是一個dict,然后key和value之間使用冒號:分割,并且每一組key:value的最后,以逗號,表示這一組的結(jié)束。
我們也可以使用以下的方式定義一個dict。
d = dict()
print(d) # ==> {}
不過這種定義方式,默認(rèn)得到的是一個空dict,需要調(diào)用函數(shù)往里面添加數(shù)據(jù),我們后面會繼續(xù)學(xué)習(xí)。
新來的Gaven同學(xué)成績是86,請編寫一個dict,把Gaven同學(xué)的成績也加進去。
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49
}
參考答案:
d = {
'Alice': 45,
'Bob': 60,
'Candy': 75,
'David': 86,
'Ellena': 49,
'Gaven': 86
}
請驗證,完成請求
由于請求次數(shù)過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報