第三次課後作業

2022-09-11 05:39:14 字數 1509 閱讀 6809

學號:2017*****7231

姓名:李根

第一段:讀取檔案

def process_file(dst):     # 讀檔案到緩衝區

try:     # 開啟檔案

f = open(dst, 'r')

except ioerror as s:

print (s)

return none

try:     # 讀檔案到緩衝區

bvffer = f.read()

except:

print ("read file error!")

return none

f.close()

return bvffer

第二段:統計每個單詞的頻率,存放在字典word_freq

def process_buffer(bvffer):

if bvffer:

word_freq = {}

for ch in '「『!;,.?」':

# 下面新增處理緩衝區 bvffer**,統計每個單詞的頻率,存放在字典word_freq

bvffer = bvffer.lower().replace(ch, " ")

words = bvffer.strip().split()

for word in words:

word_freq[word] = word_freq.get(word, 0) + 1

return word_freq

第三段:輸出 前十 10 的單詞

def output_result(word_freq):

if word_freq:

sorted_word_freq = sorted(word_freq.items(), key=lambda v: v[1], reverse=true)

for item in sorted_word_freq[:10]:  # 輸出 top 10 的單詞

print("詞:%-5s 頻:%-4d " % (item[0], item[1]))

第四段:主函式

if __name__ == "__main__":

import argparse

parser = argparse.argumentparser()

parser.add_argument('dst')

args = parser.parse_args()

dst = args.dst

bvffer = process_file(dst)

word_freq = process_buffer(bvffer)

output_result(word_freq)

執行次數最多的**

執行時間最長的**

前十單詞

任務的總結與反思

通過這次任務讓我學會了許多知識,對git,等操作更加熟悉

第三次課後作業

1 基本資訊 學號 2017 7078 姓名 楊海亮 碼雲 2 程式分析 1.process file函式,讀檔案到緩衝區 2.process buffer函式,處理緩衝區 bvffer的檔案,統計每個單詞的頻率,存放在字典word freq 3.output result函式,用輸出函式將處理好的...

第三次課後作業

學號 2017 7047 姓名 車功明 from string import punctuation def process file dst try f open dst except ioerror as s print s return none try bvffer f.read excep...

第三次課後作業

1 學號 2017035107059 姓名 尤成 2 開啟檔案讀取檔案到緩衝區 處理緩衝區 輸出單詞 輸出函式 3 次數最多 時間最長的 改進後提高了0.309 4 執行結果截圖 4 感覺這次任務我有太多的不足,大多數的部分都不會,非常慚愧,以後我會好好學習軟體工程以及python語言這兩門,大一學...