學號:2017*****7124
姓名:秦夢緣
將檔案讀入緩衝區(dst指文字檔案存放路徑,設定成形參,也可以不設,具體到函式裡設定)
def process_file(dst): # 讀檔案到緩衝區
try: # 開啟檔案
file = open(dst,'r')
except ioerror as s:
print (s)
return none
try: # 讀檔案到緩衝區
bvffer=file.read()
except:
print ("read file error!")
return none
file.close
return bvffer
設定緩衝區,將文字度數緩衝區,並對文字的特殊符號進行修改,使其更容易處理,並讀入字典。
def process_buffer(bvffer):
if bvffer:
word_freq = {}
# 下面新增處理緩衝區 bvffer**,統計每個單詞的頻率,存放在字典word_freq
bvffer=bvffer.lower()
for x in '##{}}{{':
bvffer=bvffer.replace(x, " ")
words=bvffer.strip().split()
for word in words:
word_freq[word]=word_freq.get(word,0)+1
return word_freq
設定輸出函式,運用lambda函式對詞頻排序,並以「詞」——「頻」格式輸出
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 (item)
將主函式部分改為效能分析**
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)
最多:l = open(dst,'r')
except ioerror as s:
print (s)
return none
最長:sorted_word_freq = sorted(word_freq.items(), key=lambda v: v[1], reverse=true)
執行結果
總結:通過此次作業我深刻的認識到了學習能力的不足.
第三次作業
2 12有600 mb 兆位元組 的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車這 些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kb s,其結果又如何?解 當傳送速率為2.4k...
第三次作業
1 有600mb 兆位元組 的資料,需要從南京傳送到北京 一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料,試比較這兩種方法的優劣。若資訊傳送的速率為33.6kb s,其結果又如何?解 假定連續傳送且不出錯。若...
第三次作業
p67 2 12 有600mb的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率是2.4kbps 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kbps,其結果又如何?解 1 t 600 1024...