中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python寫文件及數據處理的方法

發布時間:2020-10-28 09:37:37 來源:億速云 閱讀:249 作者:小新 欄目:編程語言

這篇文章主要介紹python寫文件及數據處理的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

python默認是以只讀模式打開文件。如果想要寫入內容,在打開文件的時候需要指定打開模式為寫入:

f = open('output.txt', 'w')

'w'就是writing,以這種模式打開文件,原來文件中的內容會被你新寫入的內容覆蓋掉,如果文件不存在,會自動創建文件。

不加參數時,open為你默認為'r',reading,只讀模式,文件必須存在,否則引發異常。

另外還有一種模式是'a',appending。它也是一種寫入模式,但你寫入的內容不會覆蓋之前的內容,而是添加到文件中。

python寫文件及數據處理的方法

輸出文件:

python寫文件及數據處理的方法

示例演示——利用python操作數據處理

看一下我們的文檔里的數據:

劉備 23 35 44 47 51
關羽 60 77 68
張飛 97 99 89 91
諸葛亮 100

1.先把文件讀進來:

f = file('scores.txt')

2.取得文件中的數據。因為每一行都是一條學生成績的記錄,所以用readlines,把每一行分開,便于之后的數據處理:

lines = f.readlines()
f.close()

提示:在程序中,經常使用print來查看數據的中間狀態,可以便于你理解程序的運行。比如這里你可以print lines,看一下內容被存成了什么格式。

3.對每一條數據進行處理。按照空格,把姓名、每次的成績分割開:

for line in lines:
data = line.split()

接下來的4、5兩個步驟都是針對一條數據的處理,所以都是在for循環的內部。

4.整個程序最核心的部分到了。如何把一個學生的幾次成績合并,并保存起來呢?我的做法是:對于每一條數據,都新建一個字符串,把學生的名字和算好的總成績保存進去。最后再把這些字符串一起保存到文件中:

sum = 0
for score in data[1:]:
sum += int(score)
result = '%s\t: %d\n' % (data[0], sum)

這里幾個要注意的點:

對于每一行分割的數據,data[0]是姓名,data[1:]是所有成績組成的列表。
每次循環中,sum都要先清零。
score是一個字符串,為了做計算,需要轉成整數值int。
result中,我加了一個制表符\t和換行符\n,讓輸出的結果更好看些。

5.得到一個學生的總成績后,把它添加到一個list中。

results.append(result)
results需要在循環之前初始化results = []

6.最后,全部成績處理完畢后,把results中的內容保存至文件。因為results是一個字符串組成的list,這里我們直接用writelines方法:

output = file('result.txt', 'w')
output.writelines(results)
outpus.close()

python寫文件及數據處理的方法

輸出結果:

python寫文件及數據處理的方法

以上是python寫文件及數據處理的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临洮县| 迁安市| 略阳县| 确山县| 常熟市| 东乌珠穆沁旗| 乌拉特后旗| 成都市| 濉溪县| 精河县| 信丰县| 闻喜县| 社会| 宣城市| 阳江市| 澎湖县| 舒城县| 克什克腾旗| 南充市| 兴宁市| 江阴市| 元氏县| 康平县| 屏东县| 临湘市| 通海县| 张掖市| 布拖县| 扶风县| 赤壁市| 南漳县| 宜春市| 化隆| 普陀区| 昔阳县| 翁源县| 万荣县| 安多县| 科技| 宿州市| 合山市|