Python程序設計實驗報告: 實驗八 文件


安徽工程大學

  Python程序設計 實驗報告

班級   物流192班   姓名  呂晨  學號  3190505209  成績          

日期    2020.6.2     指導老師    修宇 

【實驗名稱】實驗八 文件

【實驗目的】  

掌握讀寫文本文件或 CSV 文件,進而對數據進行處理的方法。

【實驗條件】  

PC機或者遠程編程環境

【實驗內容】

完成二個編程題。

1)水滸傳詞頻統計

水滸傳-詞頻統計

描述

使用詞頻統計的方法,生成《水滸傳》出場次數最多的10個人物的姓名。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

 水滸傳文本下載(略)

讀取《水滸傳》文本文件的代碼如下:‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

txt = open("AllManAreBrothers.txt", "r", encoding="utf-8").read()

代碼模板:

# ThreeKingdomsV2

import jieba

# 讀取txt文件,獲取需要統計詞匯的文本

txt = open("AllManAreBrothers.txt", "r", encoding="utf-8").read()

# 設置需要輸出最多的前n位人物的數量

n = 10

# 請在下列exludes集合中,自行補充其他需要排除的詞匯

excludes = {

    "兩個", "一個", "只見", "如何", "那里", "哥哥",

}

words = jieba.lcut(txt)

counts = {}

# 請擴展下列分支結構,轉換更多替代詞

for word in words:

    if len(word) == 1:

        continue

    elif word == "宋江道":

        rword = "宋江"

    else:

        rword = word

    counts[rword] = counts.get(rword, 0) + 1

    

# 實現刪除干擾詞匯功能(此處約2行代碼)    

# 使用列表和lambda功能實現 詞匯的排序 (此處約2行代碼)    

# 依次輸出統計次數最多的前n位(此處約3行代碼)  

 

2)血壓心率分析

描述

BP.txt”是以逗號分隔的日期、血壓、心率記錄數據文本文件( open('BP.txt',encoding="gbk"))

統計收縮壓、舒張壓、心率的總平均值(保留3位小數)。

 

實驗過程】

實驗過程與記錄

一、水滸傳詞頻統計

代碼如下:

 

 

 

 

 

在實驗中遇到的問題:

在得到正確代碼的過程中,需要不斷補充其他需要排除的詞匯直到結果正確。例如下圖:

 

 

 

 

 

 

 

 

 

 二、血壓心率分析

代碼如下:

 

 

 

 

在輸入代碼時應注意符號大小寫、中英文符號等細節問題。

 

在實驗過程中遇到的問題:

 

 

 一開始做此題並沒有清晰的思路,后來老師給了提示:

 

 

 理解提示中每行代碼的含義后,補充剩下的幾行代碼:

 

 

 

 

用IDLE運行代碼得到的結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM