下面是從索引中獲取單詞出現的頻率資訊,並把他們寫進對應的列表裡。
import sys
import re
word_re = re.compile(r'\w+')
index = {}
with open(sys.ar**[1], encoding='utf-8') as fp:
for line_no, line in enumerate(fp, 1):
for match in word_re.finditer(line):
word = match.group()
column_no = match.start() + 1
location = (line_no, column_no)
# this is ugly; coded like this to make a point
occurrences = index.get(word, ) # <1>
index[word] = occurrences # <3>
# print in alphabetical order
for word in sorted(index, key=str.upper): # <4>
print(word, index[word])
# end index0
返回的是匹配後的單詞在文**現的位置。
下面是使用 setdefault ,用 setdefault 用一行就解決了獲取和更新單詞的出現情況表
import sys
import re
word_re = re.compile(r'\w+')
index = {}
with open(sys.ar**[1], encoding='utf-8') as fp:
for line_no, line in enumerate(fp, 1):
print(line_no, line)
for match in word_re.finditer(line):
word = match.group()
print(word)
column_no = match.start() + 1
location = (line_no, column_no)
# print in alphabetical order
for word in sorted(index, key=str.upper):
print(word, index[word])
# end index
可以替換
if key not in my_dict:
my_dict[key] =
二者的效果是一樣的,只不過後者至少要進行兩次鍵查詢。如果鍵不存在就是三次,用 setdefault 只需要一次就可以完成。
python練習之setdefault用法詳解
setdefault作為python字典中的函式,有很多功能。語法 dict.setdefault key,default none key為查詢的鍵,default為查不到時,系統自動在字典裡生成的與key對應的值。如果存在該鍵值對,則返回對應的值,否則返回default的引數 用法 給字典中的不...
不找藉口找方法,勝任才是硬道理
他出生在四川,是窮孩子 出身,初中畢業就外出打工 年 月,他應聘一家房地產 公司的發單員,底薪 元,不包吃住,發出的單做成生意,才有一點提成 上班第一天,老闆講了很多鼓勵大家的話,其中一句 不找藉口找方法,勝任才是硬道理 讓他印象深刻 上班後,他勁頭十足,每天早晨 時就出門,晚上 時還在路邊發宣傳單...
如何解決php domdocument找不到的問題
具體問題 我在magento應用程式的頁面上發現錯誤 當我訪問它時,它總是顯示此訊息錯誤 fatal error c程式設計客棧lass domdocumwww.cppcns.coment not found in home lib zend feed abstract.php on line 95...