詳解Python的文件處理
先學會文件的讀寫!
比如像以前在學校讀書的時候,第一門編程課設計要求是制作學生管理系統(tǒng)。
這就需要使用文件來處理(也可以用數(shù)據(jù)庫,但是一般C語言都是很多計算機系新生的首選語言,這時候大概率也不知道數(shù)據(jù)庫)。
python 最常用的是open和write函數(shù),如下:
#open函數(shù):接收一個文件名,還有其他參數(shù)可省略不寫。 one_file = open('myfile.txt') #讀取數(shù)據(jù)賦值給data變量 data = one_file.read() #一個文件對象的write函數(shù) one_file = open('myfile.txt','w') #write函數(shù):傳入數(shù)據(jù),write函數(shù)把數(shù)據(jù)寫入到one_file對應的文件中。 one_file.write('寫到文件的數(shù)據(jù)')
我們看看一些文件操作示例吧
讀取文件數(shù)據(jù)
保留下面數(shù)據(jù)到為文件:sample.txt
持續(xù)學習 持續(xù)開發(fā) 我雷學委
afile = open("sample.txt") print(afile.read())
寫數(shù)據(jù)簡單展示
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/11/12 11:58 下午 # @Author : LeiXueWei # @CSDN/Juejin/Wechat: 雷學委 # @XueWeiTag: CodingDemo # @File : filedemo.py # @Project : hello afile = open("sample.txt") data = afile.read() print("sample file content=", data) afile.close() #把sample讀取的數(shù)據(jù)寫到test文件 afile = open("./test.txt", "w") afile.write(data) afile.close() print("write data to test file!") afile = open("./test.txt") data = afile.read() afile.close() print("test file content=", data)
我們看,讀取到的內(nèi)容確實是寫入的。
這個文件操作非常簡單。
讀寫文件就這么簡單,但是我們操作文件之后,記得調(diào)用close函數(shù)(關閉文件,不然后續(xù)再讀寫操作會出現(xiàn)異常/錯誤?。?/p>
close函數(shù)的調(diào)用如下:
one_file.close() #文件對象.close()
但是我們通常都是編寫這種風格的文件讀寫:
with open('sample.txt', 'r') as one_file: data = one_file.read() #無須調(diào)用close了,這個with代碼塊內(nèi),python會幫我們自動關閉文件。
以上都是一開文件就一次性讀取的,Python中還可以一行一行讀取。
按行讀取
我們基于前面讀寫文件代碼改造,直接看:
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/11/12 11:58 下午 # @Author : LeiXueWei # @CSDN/Juejin/Wechat: 雷學委 # @XueWeiTag: CodingDemo # @File : filedemo2.py # @Project : hello with open("sample.txt") as afile: data = afile.readline() print("sample file content=", data) with open("./test.txt", "w") as afile: afile.write(data) print("write data to test file!") with open("test.txt") as afile: data = afile.readline() print("test file content=", data)
我們看到這里讀取了sample文件的一行,然后寫入到test文件,也只有一行!
總結
Python 文件的讀取非常方便,內(nèi)置的open函數(shù)和文件對象自帶的write函數(shù),設計非常簡單。
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內(nèi)容!
相關文章
Pandas使用stack和pivot實現(xiàn)數(shù)據(jù)透視的方法
筆者最近正在學習Pandas數(shù)據(jù)分析,將自己的學習筆記做成一套系列文章。本節(jié)主要記錄Pandas中使用stack和pivot實現(xiàn)數(shù)據(jù)透視。感興趣的小伙伴們可以參考一下2021-09-09使用PyCharm調(diào)試程序?qū)崿F(xiàn)過程
這篇文章主要介紹了使用PyCharm調(diào)試程序?qū)崿F(xiàn)過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11Python version 2.7 required, which was not found in the regi
這篇文章主要介紹了安裝PIL庫時提示錯誤Python version 2.7 required, which was not found in the registry問題的解決方法,需要的朋友可以參考下2014-08-08django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t e
這篇文章主要給大家介紹了關于執(zhí)行python manage.py migrate時報錯:django.db.utils.ProgrammingError: (1146, "Table 'test.model_student' doesn't exist" )問題的解決方法,文中將解決的方法介紹的非常詳細,需要的朋友可以參考下2018-07-07