my_dict = {'name':'班長(zhǎng)', 'id':100, 'sex':'f', 'address':'地球亞洲中國(guó)北京'}
說(shuō)明:
- 字典和列表一樣,也能夠存儲(chǔ)多個(gè)數(shù)據(jù)
- 列表中找某個(gè)元素時(shí),是根據(jù)下標(biāo)進(jìn)行的
- 字典中找某個(gè)元素時(shí),是根據(jù)'名字'(就是冒號(hào):前面的那個(gè)值,例如上面代碼中的'name'、'id'、'sex')
- 字典的每個(gè)元素由2部分組成,鍵:值。例如 'name':'班長(zhǎng)' ,'name'為鍵,'班長(zhǎng)'為值
根據(jù)鍵訪問(wèn)值
info = {'name':'班長(zhǎng)', 'id':100, 'sex':'f', 'address':'地球亞洲中國(guó)北京'}
print(info['name'])
print(info['address'])
若訪問(wèn)不存在的鍵,則會(huì)報(bào)錯(cuò):
>>> info['age']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'age'
在我們不確定字典中是否存在某個(gè)鍵而又想獲取其值時(shí),可以使用get方法,還可以設(shè)置默認(rèn)值:
>>> age = info.get('age')
>>> age #'age'鍵不存在,所以age為None
>>> type(age)
<type 'NoneType'>
>>> age = info.get('age', 18) # 若info中不存在'age'這個(gè)鍵,就返回默認(rèn)值18
>>> age
18
使用get 和setdefault不同之處是 如果沒(méi)有而且設(shè)置默認(rèn)值 get不會(huì)向當(dāng)前字典中添加鍵值對(duì)setdefault會(huì)向當(dāng)前字典中添加鍵值對(duì)
enumerate
enumerate() 函數(shù)用于將一個(gè)可遍歷的數(shù)據(jù)對(duì)象(如列表、元組或字符串)組合為一個(gè)索引序列,同時(shí)列出數(shù)據(jù)和數(shù)據(jù)下標(biāo),一般用在 for 循環(huán)當(dāng)中。
>>> chars = ['a', 'b', 'c', 'd']
>>> for i, chr in enumerate(chars):
... print i, chr
...
0 a
1 b
2 c
3 d