python對(duì)文件的操作方法匯總
規(guī)則:open(file_name[,access_mode][,buffering])
參數(shù)說(shuō)明
file_name:、文件路徑+文件名稱,加路徑從路徑開(kāi)始訪問(wèn),不加路徑直接訪問(wèn)的是與你編輯的py文件在同一目錄下的文件
access_mode:打開(kāi)文件的方式:默認(rèn)為只讀模式,r
其他打開(kāi)文件的方式:
'r':只讀
'w':寫(xiě)
'a':追加
'r+' == r+w : 可讀可寫(xiě),主要為讀,若文件不存在會(huì)出現(xiàn)保存
'w+' == w+r :可讀可寫(xiě),主要為寫(xiě),文件若不存在就創(chuàng)建一個(gè)文件
'a+' ==a+r :可追加可寫(xiě),文件若不存在就創(chuàng)建
如果為二進(jìn)制文件,則在后面加個(gè)b,例如:wb
對(duì)文件操作時(shí)要注意編碼格式,不然會(huì)出現(xiàn)亂碼。默認(rèn)格式為utf-8
# --*-- coding:UTF-8 --*--
# 打開(kāi)文件并讀取文件
f = open(r'file.text')
print(f.read())
f.close()
# 結(jié)果:你發(fā)順豐發(fā)撒瘋 是發(fā)撒瘋 發(fā)
# open 打開(kāi), read為讀取文件內(nèi)容, close為關(guān)閉文件
# 打開(kāi)一個(gè)不存在的文件
# f = open(r'/User/xxx/s.text')
# 結(jié)果:FileNotFoundError: [Errno 2] No such file or directory: '/User/xxx/s.text'
# 如果直接打開(kāi)文件的話必須要關(guān)閉文件,寫(xiě)的時(shí)候不關(guān)閉會(huì)寫(xiě)不進(jìn)去內(nèi)容的
# 用with open的時(shí)候直接使用,就不需要關(guān)閉文件了
with open(r'file.text') as fp:
print(fp.read())
# 結(jié)果:你發(fā)順豐發(fā)撒瘋 是發(fā)撒瘋 發(fā)
# fp是將文件縮寫(xiě),以fp代替文件
'''
讀取文本的三種方法:
read:讀取文本的所有內(nèi)容
readline:讀取文章的一行
readlines() 自動(dòng)將文件內(nèi)容分析成一個(gè)行的列表讀取
'''
# 寫(xiě)文件
with open('learning.txt', 'w') as fp:
fp.write('Hello, world!')
# 結(jié)果:自動(dòng)新建一個(gè)learning.txt的文件,并且存入內(nèi)容hello ,world!
'''
寫(xiě)入文本的兩種方法:
write():將內(nèi)容寫(xiě)入文本中
writelines():針對(duì)列表的操作
'''
# 舉例說(shuō)明readlines和writelines
with open('text.txt','w') as fp:
fp.writelines(['123\n', '234\n', '345\n', '456\n',])
# 結(jié)果:
'''
123
234
345
456
'''
with open('text.txt','r') as fp:
print(fp.readlines())
# 結(jié)果:['123\n', '234\n', '345\n', '456\n']
# 文本后面追加內(nèi)容用a模式,不然就直接覆蓋了之前的內(nèi)容
with open('learning.txt', 'a') as fp:
fp.write('\nHello, world!')
# 結(jié)果:
'''
Hello, world!
Hello, world!
'''
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python的多種對(duì)象工廠模式方便代碼維護(hù)擴(kuò)展
這篇文章主要為大家介紹了Python的多種對(duì)象工廠模式更方便我們進(jìn)行代碼維護(hù)擴(kuò)展,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
pycharm中加了斷點(diǎn)卻無(wú)法調(diào)試,直接執(zhí)行到程序結(jié)束如何解決
這篇文章主要介紹了pycharm中加了斷點(diǎn)卻無(wú)法調(diào)試,直接執(zhí)行到程序結(jié)束如何解決問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
Python無(wú)頭爬蟲(chóng)下載文件的實(shí)現(xiàn)
這篇文章主要介紹了Python無(wú)頭爬蟲(chóng)下載文件的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
Python計(jì)算兩個(gè)日期相差天數(shù)的方法示例
這篇文章主要介紹了Python計(jì)算兩個(gè)日期相差天數(shù)的方法,結(jié)合簡(jiǎn)單實(shí)例形式分析了Python日期時(shí)間的轉(zhuǎn)換與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-05-05
如何利用Python提取pdf中的表格數(shù)據(jù)(附實(shí)戰(zhàn)案例)
從PDF表格中獲取數(shù)據(jù)是一項(xiàng)痛苦的工作,下面這篇文章主要給大家介紹了關(guān)于如何利用Python提取pdf中的表格數(shù)據(jù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11
使用tensorflow顯示pb模型的所有網(wǎng)絡(luò)結(jié)點(diǎn)方式
今天小編就為大家分享一篇使用tensorflow顯示pb模型的所有網(wǎng)絡(luò)結(jié)點(diǎn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
python 捕獲shell腳本的輸出結(jié)果實(shí)例
下面小編就為大家?guī)?lái)一篇python 捕獲shell腳本的輸出結(jié)果實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01
python神經(jīng)網(wǎng)絡(luò)使用tensorflow構(gòu)建長(zhǎng)短時(shí)記憶LSTM
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)tensorflow構(gòu)建長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)LSTM,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
Python中的random.uniform()函數(shù)教程與實(shí)例解析
今天小編就為大家分享一篇關(guān)于Python中的random.uniform()函數(shù)教程與實(shí)例解析,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03

