欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python進(jìn)行文件處理的示例詳解

 更新時(shí)間:2023年02月27日 08:37:39   作者:王獻(xiàn)運(yùn)  
這篇文章主要通過(guò)幾個(gè)簡(jiǎn)單的示例,為大家詳細(xì)介紹一下Python實(shí)現(xiàn)文件處理的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

1.文件介紹

python操作文件

1.1python文件的基本操作

打開(kāi)文件關(guān)鍵字open

語(yǔ)法格式:

open('文件路徑','讀寫(xiě)模式','字符編碼')

f = open('a.txt','r',encoding='utf-8')#打開(kāi)文件
print(f.read())#操作文件
f.close()#關(guān)閉文件

1.2.with上下文管理器

(with打開(kāi)文件之后會(huì)自動(dòng)關(guān)閉)

語(yǔ)法格式:

with open(r'a.txt','r',encoding='utf-8') as f:

  • as f:就相當(dāng)于你寫(xiě)了一個(gè)f = open,只不過(guò)這個(gè)as替換了等于號(hào),這個(gè)f(句柄)就相當(dāng)于一個(gè)變量名可以隨意更改
  • r 的作用:有時(shí)有你在填寫(xiě)路徑的時(shí)候遇到反斜杠可能會(huì)發(fā)生轉(zhuǎn)義,這個(gè)時(shí)候字符串最前面加上 r 來(lái)解決轉(zhuǎn)義的問(wèn)題,

2.文件的讀寫(xiě)模式

2.1. r  == read: 只讀,不能寫(xiě)

with open(r'a.txt','r',encoding='utf-8') as f:
f.read()
#read()是有缺陷的,如果打開(kāi)文件特別大的時(shí)候就會(huì)打不開(kāi),會(huì)很慢。會(huì)導(dǎo)致內(nèi)存溢出,因?yàn)樗蜷_(kāi)不會(huì)存在磁盤中,會(huì)先存在內(nèi)存中 

2.2. w ==write:只能寫(xiě),不能讀

with open(r'a.txt','w',encoding='utf-8') as f:
f.write('內(nèi)容')
#如果路徑不存在,會(huì)新建一個(gè)文件
#如果文件存在,會(huì)先清空文件中的內(nèi)容,在進(jìn)行寫(xiě)內(nèi)容,就算不寫(xiě)東西用pass,也會(huì)清空,w模式就會(huì)直接清空
# w 模式只能寫(xiě)string類型

2.3. a == apppen : 追加

with open(r'a.txt','a',encoding='utf-8') as f:
f.write('內(nèi)容\n')
#如果路徑不存在,會(huì)新建一個(gè)文件
#不會(huì)清空文件內(nèi)容,但是不會(huì)換行,需要自己在內(nèi)容后面加\n

多行數(shù)據(jù):括號(hào)里不可能寫(xiě)多行數(shù)據(jù),需要多個(gè)write如下:

f.write('內(nèi)容\n')
f.write('內(nèi)容\n')
f.write('內(nèi)容\n')
f.write('內(nèi)容\n')
########r,w, a:只能讀寫(xiě)文檔,不能讀寫(xiě)視頻音頻 

3.文件的操作方法

##讀模式
with open(r'a.txt','a',encoding='utf-8') as f:
print(f.readline())#一次讀取一行,會(huì)自動(dòng)換行
print(f.readlines())#把文件內(nèi)的數(shù)據(jù)按照每一行組裝成列表的模式
print(f.readable())#判斷是否可具備讀的條件,就是看這個(gè)文件是否可讀,返回bool值
 
##寫(xiě)模式
with open(r'a.txt','a',encoding='utf-8') as f:
print  (f.write())#直接清空數(shù)據(jù),然后根據(jù)口號(hào)中的內(nèi)容寫(xiě)數(shù)據(jù)
print(f.writeable())#判斷是否具備寫(xiě)的條件,返回bool值
print(f.writelines(['獻(xiàn)運(yùn)好帥\n','獻(xiàn)運(yùn)好帥\n','獻(xiàn)運(yùn)好帥\n',]))#就是吧數(shù)據(jù)一行一行的給你去寫(xiě)
 
##文件的操作優(yōu)化
print(f.flush())#把內(nèi)存中的數(shù)據(jù)立刻刷到硬盤中,因?yàn)槟阋婚_(kāi)始寫(xiě)的數(shù)據(jù)會(huì)存儲(chǔ)在內(nèi)存中如果發(fā)生斷電數(shù)據(jù)會(huì)消失
"""文件句柄 f 支持for循環(huán)"""
with open(r'a.txt','a',encoding='utf-8') as f:
  for line in f :
print(line)#把文件里面的數(shù)據(jù)一行一行打印,以后讀取文件的時(shí)候都要用for循環(huán)一行一行的去讀取

4.文件的操作模式

r. w. a. 模式

1. 只能操作文本

2. 都是以字符串為單位

3. r,w,a,原先的寫(xiě)法是rt,wt,at,如果是只操作文本這個(gè)t可以省略

b模式:二進(jìn)制

1.能操作任何的數(shù)據(jù)類型,eg:文本,音頻,視屏

2.寫(xiě)法:rb ab wb  :此時(shí)的b不能省略

3.b模式的情況下encoding參數(shù)不能寫(xiě),因?yàn)樗际亲址幋a的模式了encoding就沒(méi)用了

##rb:
with open(r'a.jpeg','rb') as f:#b模式的話字符編碼就不要了
print(f.read())#打印出一推二進(jìn)制數(shù)
##wb:
with open(r'a.jpeg','rb',encoding='utf-8') as f:
f.write(b'你好')#你好前面必須加上b才可以打印出,不然出來(lái)的是亂碼注釋第一種編碼方式
s.'你好'
f.write(s.encode(utf8))#這是第二種編碼方式
"""wb寫(xiě)進(jìn)去了也必須rb來(lái)讀,然后后面還需要跟上decode去解碼
print(f.read().decode('utf8'))
"""
##按照字符或字節(jié)讀取:要注意他讀取的數(shù)據(jù)大小
with open(r'a.txt','a',encoding='utf-8') as f:
print(f.read(1))#當(dāng) r 模式下,read括號(hào)里面的數(shù)字代表的是字符,但是在 b 模式下read后面括號(hào)里面的代表的是字節(jié)

到此這篇關(guān)于Python進(jìn)行文件處理的示例詳解的文章就介紹到這了,更多相關(guān)Python文件處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在PyCharm中實(shí)現(xiàn)關(guān)閉一個(gè)死循環(huán)程序的方法

    在PyCharm中實(shí)現(xiàn)關(guān)閉一個(gè)死循環(huán)程序的方法

    今天小編就為大家分享一篇在PyCharm中實(shí)現(xiàn)關(guān)閉一個(gè)死循環(huán)程序的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Python打包后的exe還原成.py的實(shí)現(xiàn)步驟

    Python打包后的exe還原成.py的實(shí)現(xiàn)步驟

    本文主要介紹了Python打包后的exe還原成.py的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python學(xué)習(xí)之不同數(shù)據(jù)類型間的轉(zhuǎn)換總結(jié)

    Python學(xué)習(xí)之不同數(shù)據(jù)類型間的轉(zhuǎn)換總結(jié)

    類型轉(zhuǎn)換,就是將自身的數(shù)據(jù)類型變成新的數(shù)據(jù)類型,并擁有新的數(shù)據(jù)類型的所有功能的過(guò)程。本文將詳細(xì)為大家介紹如何在Python中實(shí)現(xiàn)不同數(shù)據(jù)類型的轉(zhuǎn)換,感興趣的可以了解一下
    2022-03-03
  • python3檢查字典傳入函數(shù)鍵是否齊全的實(shí)例

    python3檢查字典傳入函數(shù)鍵是否齊全的實(shí)例

    這篇文章主要介紹了python3檢查字典傳入函數(shù)鍵是否齊全的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • 一文詳解如何在Matplotlib中更改圖例字體大小

    一文詳解如何在Matplotlib中更改圖例字體大小

    在我們處理數(shù)據(jù)的時(shí)候,需要對(duì)大量的數(shù)據(jù)進(jìn)行繪圖,就免不了要使用到Matplotlib,下面這篇文章主要給大家介紹了關(guān)于如何在Matplotlib中更改圖例字體大小的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • Python基礎(chǔ)之文件讀取的講解

    Python基礎(chǔ)之文件讀取的講解

    今天小編就為大家分享一篇關(guān)于Python基礎(chǔ)之文件讀取的講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • Python學(xué)習(xí)之模塊化程序設(shè)計(jì)示例詳解

    Python學(xué)習(xí)之模塊化程序設(shè)計(jì)示例詳解

    程序設(shè)計(jì)的模塊化指的是在進(jìn)行程序設(shè)計(jì)時(shí),把一個(gè)大的程序功能劃分為若干個(gè)小的程序模塊。每一個(gè)小程序模塊實(shí)現(xiàn)一個(gè)確定的功能,并且在這些小程序模塊實(shí)現(xiàn)的功能之間建立必要的聯(lián)系。本文將利用示例詳細(xì)介紹一下Python的模塊化程序設(shè)計(jì),需要的可以參考一下
    2022-03-03
  • Numpy中np.newaxis的作用和用法小結(jié)

    Numpy中np.newaxis的作用和用法小結(jié)

    np.newaxis常常用于將一個(gè)一維數(shù)組轉(zhuǎn)化為二維數(shù)組,本文就來(lái)介紹一下Numpy中np.newaxis的作用和用法小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • 關(guān)于Pandas?count()與values_count()的用法及區(qū)別

    關(guān)于Pandas?count()與values_count()的用法及區(qū)別

    這篇文章主要介紹了關(guān)于Pandas?count()與values_count()的用法及區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python監(jiān)控進(jìn)程狀態(tài),記錄重啟時(shí)間及進(jìn)程號(hào)的實(shí)例

    python監(jiān)控進(jìn)程狀態(tài),記錄重啟時(shí)間及進(jìn)程號(hào)的實(shí)例

    今天小編就為大家分享一篇python監(jiān)控進(jìn)程狀態(tài),記錄重啟時(shí)間及進(jìn)程號(hào)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07

最新評(píng)論