Python 字典
setdefault() 函數 ---有key獲取值、沒key設置 key:default
dict.setdefault(key, default=None)
如果 key 在 字典中,返回對應的值。
如果 key 不在字典中,則插入 key 及設置的默認值 default,並返回 default ,default 默認值為 None。
get()函數---有key獲取值、沒key返回default:
dict.get(key, default=None)
返回指定鍵的值,如果值不在字典中返回默認值 None。
話不多說,上栗子:
setdefault()方法:
>>> dict = {}
>>> dict['成龍'] = '演員' #添加鍵值對
>>> dict
{'成龍': '演員'}
>>> dict.setdefault('成龍' , 'Duang') # 值('演員')存在,故返回值('演員'),而不是'Duang'
'演員'
>>> dict
{'成龍': '演員'}
>>> dict.setdefault('竇唯' , '歌手')
'歌手'
>>> dict
{'成龍': '演員', '竇唯': '歌手'}
get()方法:
>>> dict.setdefault('波多',18)
18
>>> dict
{'成龍': '演員', '竇唯': '歌手', '波多': 18}
>>> dict.get('成龍')
'演員'
>>> dict.get('波多')
18
附練習:
# 循環迭代message字符串中每個字符,計算每個字符出現的次數 # 涉及的技能包:1.字典的get()和setdeafult()方法 2.漂亮打印pprint import pprint message = 'It was a bright cold day in May,andd the clocks were striking thirteen.' count = {} #1 字典的setdefault()方法 for character in message: count.setdefault(character,0) #查詢此次計數前此字母出現的次數 count[character] = count[character] + 1 #更新次數(for每次遍歷一個字母,故次數加一) pprint.pprint (count) count1 = {} #2 字典的get()方法 for character in message: count1[character] = count1.get(character,0)+ 1 #查詢出現次數,並加一 print (count1)