詳解Python的文件處理
先學(xué)會(huì)文件的讀寫(xiě)!
比如像以前在學(xué)校讀書(shū)的時(shí)候,第一門(mén)編程課設(shè)計(jì)要求是制作學(xué)生管理系統(tǒng)。
這就需要使用文件來(lái)處理(也可以用數(shù)據(jù)庫(kù),但是一般C語(yǔ)言都是很多計(jì)算機(jī)系新生的首選語(yǔ)言,這時(shí)候大概率也不知道數(shù)據(jù)庫(kù))。
python 最常用的是open和write函數(shù),如下:
#open函數(shù):接收一個(gè)文件名,還有其他參數(shù)可省略不寫(xiě)。
one_file = open('myfile.txt')
#讀取數(shù)據(jù)賦值給data變量
data = one_file.read()
#一個(gè)文件對(duì)象的write函數(shù)
one_file = open('myfile.txt','w')
#write函數(shù):傳入數(shù)據(jù),write函數(shù)把數(shù)據(jù)寫(xiě)入到one_file對(duì)應(yīng)的文件中。
one_file.write('寫(xiě)到文件的數(shù)據(jù)')
我們看看一些文件操作示例吧
讀取文件數(shù)據(jù)
保留下面數(shù)據(jù)到為文件:sample.txt
持續(xù)學(xué)習(xí) 持續(xù)開(kāi)發(fā) 我雷學(xué)委
afile = open("sample.txt")
print(afile.read())

寫(xiě)數(shù)據(jù)簡(jiǎn)單展示
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/12 11:58 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : filedemo.py
# @Project : hello
afile = open("sample.txt")
data = afile.read()
print("sample file content=", data)
afile.close()
#把sample讀取的數(shù)據(jù)寫(xiě)到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)容確實(shí)是寫(xiě)入的。
這個(gè)文件操作非常簡(jiǎn)單。

讀寫(xiě)文件就這么簡(jiǎn)單,但是我們操作文件之后,記得調(diào)用close函數(shù)(關(guān)閉文件,不然后續(xù)再讀寫(xiě)操作會(huì)出現(xiàn)異常/錯(cuò)誤?。?/p>
close函數(shù)的調(diào)用如下:
one_file.close() #文件對(duì)象.close()
但是我們通常都是編寫(xiě)這種風(fēng)格的文件讀寫(xiě):
with open('sample.txt', 'r') as one_file:
data = one_file.read()
#無(wú)須調(diào)用close了,這個(gè)with代碼塊內(nèi),python會(huì)幫我們自動(dòng)關(guān)閉文件。
以上都是一開(kāi)文件就一次性讀取的,Python中還可以一行一行讀取。
按行讀取
我們基于前面讀寫(xiě)文件代碼改造,直接看:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/12 11:58 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @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文件的一行,然后寫(xiě)入到test文件,也只有一行!

總結(jié)
Python 文件的讀取非常方便,內(nèi)置的open函數(shù)和文件對(duì)象自帶的write函數(shù),設(shè)計(jì)非常簡(jiǎn)單。
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
python3使用pyqt5制作一個(gè)超簡(jiǎn)單瀏覽器的實(shí)例
下面小編就為大家?guī)?lái)一篇python3使用pyqt5制作一個(gè)超簡(jiǎn)單瀏覽器的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
Python的網(wǎng)絡(luò)編程庫(kù)Gevent的安裝及使用技巧
Gevent庫(kù)的奧義在于并發(fā)式的高性能網(wǎng)絡(luò)程序設(shè)計(jì)支持,這里我們將來(lái)講解Python的網(wǎng)絡(luò)編程庫(kù)Gevent的安裝及使用技巧,來(lái)看一下Gevent支持的多進(jìn)程程序編寫(xiě):2016-06-06
Python超簡(jiǎn)單容易上手的畫(huà)圖工具庫(kù)推薦
今天小編給大家分享一款很棒的python畫(huà)圖工具庫(kù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-05-05
解決python 兩個(gè)時(shí)間戳相減出現(xiàn)結(jié)果錯(cuò)誤的問(wèn)題
這篇文章主要介紹了解決python 兩個(gè)時(shí)間戳相減出現(xiàn)結(jié)果錯(cuò)誤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
python順序的讀取文件夾下名稱(chēng)有序的文件方法
今天小編就為大家分享一篇python順序的讀取文件夾下名稱(chēng)有序的文件方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析
這篇文章主要介紹了Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08

