欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Python3對文件操作-創(chuàng)新互聯(lián)

計(jì)算機(jī)文件

在計(jì)算機(jī)系統(tǒng)中,以硬盤為載體存儲(chǔ)在計(jì)算機(jī)上的信息集合稱為文件。文件可以是文本文檔、圖片、聲音、程序等多種類型。在編程時(shí)經(jīng)常要對文件進(jìn)行讀寫等操作, 從程序員的視角可以把文件理解為是連續(xù)的字節(jié)序列,進(jìn)行數(shù)據(jù)傳輸需要使用字節(jié)流, 字節(jié)流可以是由單個(gè)字節(jié)或大塊數(shù)據(jù)組成。文件類型通常分為文本文件和二進(jìn)制文件。

創(chuàng)新互聯(lián)一直通過網(wǎng)站建設(shè)和網(wǎng)站營銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實(shí)效"的一站式服務(wù),以成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、移動(dòng)互聯(lián)產(chǎn)品、成都營銷網(wǎng)站建設(shè)服務(wù)為核心業(yè)務(wù)。10年網(wǎng)站制作的經(jīng)驗(yàn),使用新網(wǎng)站建設(shè)技術(shù),全新開發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價(jià)格便宜而且實(shí)用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡單易用,維護(hù)方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。

文件操作

在 Python中對文件進(jìn)行操作分為3個(gè)步驟,首先要打開文件,然后是對文件進(jìn)行讀寫操作,最后需要關(guān)閉文件。

打開文件---open函數(shù)

你必須先用Python內(nèi)置的open()函數(shù)打開一個(gè)文件,創(chuàng)建一個(gè)file對象,相關(guān)的方法才可以調(diào)用它進(jìn)行讀寫。

語法:

file object = open(file_name [, access_mode][, buffering])

各個(gè)參數(shù)的細(xì)節(jié)如下:

file_name:file_name變量是一個(gè)包含了你要訪問的文件名稱的字符串值。
access_mode:access_mode決定了打開文件的模式:只讀,寫入,追加等。所有可取值見如下的完全列表。這個(gè)參數(shù)是非強(qiáng)制的,默認(rèn)文件訪問模式為只讀(r)。

buffering:如果buffering的值被設(shè)為0,就不會(huì)有寄存。如果buffering的值取1,訪問文件時(shí)會(huì)寄存行。如果將buffering的值設(shè)為大于1的整數(shù),表明了這就是的寄存區(qū)的緩沖大小。如果取負(fù)值,寄存區(qū)的緩沖大小則為系統(tǒng)默認(rèn)。

不同模式打開文件的完全列表:

Python3 對文件操作
Python3 對文件操作

模式圖如下:

Python3 對文件操作
Python3 對文件操作

File對象的屬性

一個(gè)文件被打開后,你有一個(gè)file對象,你可以得到有關(guān)該文件的各種信息。
以下是和file對象相關(guān)的所有屬性的列表:

Python3 對文件操作

關(guān)閉文件---close()方法

File 對象的 close()方法刷新緩沖區(qū)里任何還沒寫入的信息,并關(guān)閉該文件,這之后便不能再進(jìn)行寫入。
當(dāng)一個(gè)文件對象的引用被重新指定給另一個(gè)文件時(shí),Python 會(huì)關(guān)閉之前的文件。用 close()方法關(guān)閉文件是一個(gè)很好的習(xí)慣。
語法:
fileObject.close()

例子:

python代碼如下:
f = open('練習(xí).txt','w',encoding='utf-8') #寫文件
...
f.close()
f = open('練習(xí).txt','r',encoding='utf-8') #讀文件
...
f.close()

向文件寫數(shù)據(jù)--- write()方法

write()方法可將任何字符串寫入一個(gè)打開的文件。需要重點(diǎn)注意的是,Python字符串可以是二進(jìn)制數(shù)據(jù),而不是僅僅是文字。
write()方法不會(huì)在字符串的結(jié)尾添加換行符('\n'):
語法:
fileObject.write(string)

例子:

python代碼如下:
f = open('練習(xí)1.txt','w',encoding='utf-8')
f.write("我是中國人\n")
f.write("我愛自己的祖國\n")
f.write("我愛北京天安門\n")

輸出結(jié)果:
Python3 對文件操作

從文件讀數(shù)據(jù)

file.read()方法從一個(gè)打開的文件中讀取一個(gè)字符串。需要重點(diǎn)注意的是,Python字符串可以是二進(jìn)制數(shù)據(jù),而不是僅僅是文字。
語法:
file.read([count])

例子:

原文件(練習(xí).txt)

Python3 對文件操作

讀文件代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.read(1))
print(f.read(10))

輸出結(jié)果:
Python3 對文件操作
Python3 對文件操作

使用file.readline()可以讀取一行數(shù)據(jù),同樣是返回一個(gè)字符串

例子:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.readline())

輸出結(jié)果:

Python3 對文件操作

file.readline()括號里面加數(shù)字,表示讀取字符串個(gè)數(shù)

例子:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.readline(1))

輸出結(jié)果:
Python3 對文件操作

file.readlines剩余行數(shù)據(jù),返回的是一個(gè)字符串列表

例子:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.readlines())

輸出結(jié)果如下:

Python3 對文件操作

file.readlines()括號里面加數(shù)字,表示讀取字符串個(gè)數(shù),還有當(dāng)前行剩余的也讀出來

例子1:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.readlines(1)) #表示打印第一個(gè)字符串所在的那一行

輸出結(jié)果如下:
Python3 對文件操作

例子2:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.readlines(7)) #表示打印第7個(gè)字符串所在的那一行及前面的所有行

輸出結(jié)果如下:

Python3 對文件操作

注意:read()讀取的方式是讀取所有數(shù)據(jù),放到內(nèi)存中,這樣很占內(nèi)存,而且效率低小,這里推薦文件迭代器

文件迭代器

從 Python2.2開始,引進(jìn)了迭代器和文件迭代,使文件操作更加高效,不需
調(diào)用 read()方法。簡單說,迭代就是在for循環(huán)中讀取每一行數(shù)據(jù),示例代碼如下:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
for line in f.readlines():

 print(line.strip())

輸出結(jié)果:
Python3 對文件操作

注意事項(xiàng):

以寫方式打開文件時(shí),不支持讀操作。但是還有其他幾種模式存在,使用 r+、w+、或a+ 方式打開文件,可以同時(shí)進(jìn)行讀寫操作。
r+ 表示不清除原文件內(nèi)容,讀寫方式打開,而新添加的數(shù)據(jù)在文件尾部。
w+ 表示清除原文件內(nèi)容,寫讀方式打開,讀不到原文件的內(nèi)容。
a+表示把文件指針移到文件末尾,在文件末尾可以繼續(xù)寫數(shù)據(jù),讀數(shù)據(jù)不受影響。

文件定位(文件指針)

tell()方法告訴你文件內(nèi)的當(dāng)前位置, 換句話說,下一次的讀寫會(huì)發(fā)生在文件開頭這么多字節(jié)之后。

seek(offset [,from])方法改變當(dāng)前文件的位置。
Offset變量表示要移動(dòng)的字節(jié)數(shù)。
From變量指定開始移動(dòng)字節(jié)的參考位置。

如果from被設(shè)為0,這意味著將文件的開頭作為移動(dòng)字節(jié)的參考位置。如果設(shè)為1,則使用當(dāng)前的位置作為參考位置。如果它被設(shè)為2,那么該文件的末尾將作為參考位置。

例子:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
print(f.readline()) #打印的一行
f.seek(0) #指針返回原點(diǎn)
print(f.tell()) #獲取當(dāng)前指針位置
print(f.readline()) #再打印一行

輸出結(jié)果如下:
Python3 對文件操作

修改文件

1.把文件都加載到內(nèi)存里面,在修改,如vim修改文件
備注:這種方式會(huì)覆蓋掉原文件,而且不適合修改大文件,太消耗系統(tǒng)內(nèi)存了,不推薦!
2.讀取原文件,在修改相應(yīng)文件,生成到新文件中。(推薦使用)

例子:

python代碼如下:
f = open('練習(xí).txt','r',encoding='utf-8')
f_new =open('練習(xí)2.txt','w',encoding='utf-8')
for line in f:

if "宋代:孫洙" in line:

line = line.replace("宋代:孫洙","宋代:詞人") #將"孫洙"替換成"詞人”
f_new.write(line)
f.close()
f_new.close()

輸出結(jié)果如下:
Python3 對文件操作

with使用

有一些任務(wù),可能事先需要設(shè)置,事后做清理工作。對于這種場景,Python的with語句提供了一種非常方便的處理方式。一個(gè)很好的例子是文件處理,你需要獲取一個(gè)文件句柄,從文件中讀取數(shù)據(jù),然后關(guān)閉文件句柄。

例子:

python代碼如下:
with open('練習(xí).txt', 'r', encoding='utf-8') as f:

for line in f.readlines():

print(line.strip())

輸出結(jié)果如下:
Python3 對文件操作

file 對象內(nèi)建方法:

file 對象使用 open 函數(shù)來創(chuàng)建,下表列出了 file 對象常用的函數(shù):
Python3 對文件操作
Python3 對文件操作

總結(jié):

1.本博客參考了菜鳥基礎(chǔ)和自己動(dòng)手操作寫出的。
2.python2 和python3 是不一樣,這里是python3操作文件方法。
3.python操作文件是一種很常用的方法,要經(jīng)常動(dòng)手操作,才能掌握知識(shí)點(diǎn)!
4.python是很注意縮進(jìn)格式的語言,這里受博客排版影響,可能格式出現(xiàn)錯(cuò)誤,內(nèi)容僅供參考,不建議復(fù)制,自己多敲幾遍就明白了!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文名稱:Python3對文件操作-創(chuàng)新互聯(lián)
瀏覽地址:http://aaarwkj.com/article12/gccgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、ChatGPT、商城網(wǎng)站靜態(tài)網(wǎng)站、軟件開發(fā)、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
在线一区二区三区成人观看| 国产精品视频一区二区三区网站 | 97在线视频观看视频在线| 亚洲情欲一级片日韩欧美| 性感美女国产av一区二区三区| 九色国产一区二区三区| 国产日韩亚洲欧美色片| 歪歪私人影院午夜毛片| 人妖伪娘在线观看一区二区三区| 精品国内日本一区二区| 日韩激情av中文字幕| 国产精品中文字幕有码 | 亚洲 欧美 日韩一区| 精品亚洲综合一区二区| 四虎在线观看永久地址| 狼人综合狼人综合网站| 久久这里只有精品视频六| 日本色电影一区二区三区| 亚洲欧美综合伊人看片综合| 91精品人妻互换一区二区| 欧美精品一区二区久久| 久久精品夜夜夜夜夜久久| 高清免费国产日日操夜夜草| 国产精品午夜福利天堂| 美腿丝袜清纯唯美亚洲另类| 丝袜美腿蜜汁一龙二凤| 国产乱人伦真实精品视频 | 国产激情片午夜福利| 午夜91激情福利视频| 午夜福利影片免费观看| 亚洲欧美日韩精品麻豆| 国产精品久久久久精品综合| 国产三级精品正在播放| 日本韩国亚洲三级在线| 精品少妇人妻一区二区三区| 黄色录像一级大片中国的| 免费观看黄片视频在线播放| 日韩国产欧美色资源在线| 亚洲激情在线观看一区| 欧美精品一区二区久久| 精品伊人久久大香线蕉|