【Python】字典的setdefault()方法
這是一道統計目標句子中單片語合出現次數的題目,輸出的是一個字典:
wordstring = 'it was the best of times it was the worst of times \
it was the age of wisdom it was the age of foolishness'
# write your code below
def get_pair_freq1(wordstring):
wordlist = wordstring.split(" ") #分解成字串列表
dic = {}
for i in range(0,len(wordlist)-1):
if (wordlist[i],wordlist[i+1]) not in dic.keys():#識別單片語合是否已在字典中
dic[wordlist[i],wordlist[i+1]] = 1 #如果沒有則初始化鍵值對,該單片語合對應出現次數為1
else:
dic[wordlist[i],wordlist[i+1]] += 1 #如果已在字典中,則該單片語合對應出現次數+1
return dic
get_pair_freq(wordstring)
當為字典中某個鍵設定預設值時,如果該鍵沒有任何值,我們一般會用到類似上面的if語句;而setdefault()方法同樣可行,它傳入的第一個引數是要檢查的鍵,第二個引數是如果該鍵不存在時要設定的值,如果該鍵存在,則不會改變該鍵的值。
def get_pair_freq2(wordstring):
wordlist = wordstring.split(" ")
dic = {}
for i in range(0,len(wordlist)-1):
dic.setdefault((wordlist[i],wordlist[i+1]),0)
dic[wordlist[i],wordlist[i+1]] += 1
return dic
get_pair_freq(wordstring)
相關文章
- Python---字典方法Python
- python 字典修改鍵(key)的方法Python
- python輸出字典的方法整理Python
- Python 字典 fromkeys()方法Python
- python字典鍵的特性及字典內建函式&方法Python函式
- 關於python訪問字典的方法Python
- python 字典訪問的三種方法Python
- python 字典內建方法get的使用Python
- python字典dict操作方法Python
- python清空字典的兩種方法比較Python
- python 列表轉為字典的兩個小方法Python
- python操作字典型別的常用方法總結Python型別
- python-字典方法(dist)知識整理Python
- Python:字典列表字串方法測試Python字串
- Python中字典dict的11種不同操作方法Python
- Python優雅遍歷字典刪除元素的方法Python
- Python中的字典Python
- Python:字典的使用Python
- Python字典的操作Python
- dict(字典)的常用方法
- 判斷python字典中key是否存在的兩種方法Python
- Python中字典的操作Python
- Python字典的特性分析Python
- python字典的小例子Python
- python進階(24)Python字典的底層原理以及字典效率Python
- Python中如何避免字典和元組的多重巢狀的方法Python巢狀
- 在Python中將字典轉為成員變數的方法Python變數
- python-字典-如何取出字典中的所有值Python
- 什麼是字典?Python字典是可變的嗎?Python
- python-字典Python
- Python dict(字典)Python
- Python羅技字典Python
- python 字典排序Python排序
- python建立字典Python
- Python的元組()與字典{}Python
- Python的元組()與字典 { }Python
- Python字典遍歷的陷阱Python
- python中的集合與字典Python