Pyth
創(chuàng)新互聯(lián)公司專注于企業(yè)
成都全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、吳起網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、
成都h5網(wǎng)站建設(shè)、
購(gòu)物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、
外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為吳起等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。on由荷蘭數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會(huì)的Guido van Rossum于1990 年代初設(shè)計(jì),作為一門叫做ABC語(yǔ)言的替代品。Python提供了高效的高級(jí)數(shù)據(jù)結(jié)構(gòu),還能簡(jiǎn)單有效地面向?qū)ο缶幊?。Python語(yǔ)法和動(dòng)態(tài)類型,以及解釋型語(yǔ)言的本質(zhì),使它成為多數(shù)平臺(tái)上寫腳本和快速開發(fā)應(yīng)用的編程語(yǔ)言,隨著版本的不斷更新和語(yǔ)言新功能的添加,逐漸被用于獨(dú)立的、大型項(xiàng)目的開發(fā)。下面就由
創(chuàng)新互聯(lián)建站小編和大家講一講python文件操作方法有哪些。
一、文件讀取全文本操作
在一定場(chǎng)景下我們需要把文本全部?jī)?nèi)容讀取出來(lái),進(jìn)行處理。python提供三種函數(shù)讀取文件,分別是read readline readlines,
read():讀取文件的全部?jī)?nèi)容,加上參數(shù)可以指定讀取的字符。
readline():讀取文件的一行。
readlines():讀取文件的所有行到內(nèi)存中。
不同場(chǎng)景下我們可以選擇不同函數(shù)對(duì)文件進(jìn)行讀取。
1、方法一
file_name = input("請(qǐng)輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r")
txt=file.read()
# 全文本的處理
file.close()
使用read函數(shù)將文件中的內(nèi)容全部讀取,放在字符串變量txt中。這樣操作適合于文本較小,處理簡(jiǎn)單的情況,當(dāng)文件較大時(shí),這種方式處理時(shí)不合適的。一次性讀取較大的文件到內(nèi)存中,會(huì)耗費(fèi)較多的時(shí)間和資源。
軟文營(yíng)銷這時(shí)候分批處理效果更好。
2、方法二
file_name = input("請(qǐng)輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r")
txt= file.read(4)
# 文本的處理while txt != ""txt= file.read(4)
# 批量文本處理
file.close()
這種方法適合于分批處理文本信息,每次批量讀入,批量處理,不會(huì)對(duì)內(nèi)存造成較大的壓力。
3、方法三
file_name = input("請(qǐng)輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r")for line infile.readlines():
# 處理每一行數(shù)據(jù)
file.close()
這種處理方式適合處理以行為分割特點(diǎn)的文本,并且文本較小,因?yàn)檫@種處理方式需要一次性把文件所有內(nèi)容讀取到內(nèi)存中。
4、方法四
file_name = input("請(qǐng)輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r") # 這里的file時(shí)文件句柄for line infile:
# 處理每一行數(shù)據(jù)
file.close()
這種方式和方法三中的區(qū)別是分行讀入,逐行處理,不會(huì)一次性把文件所有內(nèi)容都讀入到內(nèi)存中,對(duì)一些大文件的處理是很有效的。
二、文件寫入文本操作
文件寫入有兩種寫入函數(shù)和一種輔助支持。
write():向文件中寫入一個(gè)字符或者字節(jié)流
writelines():將一個(gè)元素全為字符串的列表寫入到文件中 需要注意的是,writelines寫入列表元素的時(shí)候會(huì)把列表元素的內(nèi)容拼接到一起寫入,不會(huì)有換行和空格 。
seek(): 輔助寫入函數(shù)offset偏移量參數(shù)代表含義如下
0 - 文件開頭
1 - 當(dāng)前位置
2 - 文件結(jié)尾
1、方法一
file_name = input("output.txt", "w+")
text= "hello world!"file_name.write(text)
file.close()
2、方法二
file_name = input("output.txt", "w+")
list= ["中午","早上","晚上"]
file_name.writelines(list)for line infile:
# 讀取寫入的數(shù)據(jù),這時(shí)候發(fā)現(xiàn)是沒(méi)有任何內(nèi)容的
file.close()
我們?cè)黾右恍写a就可以讀取到寫入的文件內(nèi)容,利用seek()函數(shù)調(diào)整寫操作指針的位置,可以實(shí)現(xiàn)寫操作之后的正常讀取。
file_name = input("output.txt", "w+")
list= ["中午","早上","晚上"]
file_name.readlines(list)
file_name.seek(0) # 調(diào)整寫的指針到文件的開始位置for line infile:
# 讀取寫入的數(shù)據(jù),這時(shí)候會(huì)讀出一行寫入的數(shù)據(jù)。
file.close()
三、如何執(zhí)行python文件
用文本編輯器寫Python程序,然后保存為后綴為.py的文件,就可以用Python直接運(yùn)行這個(gè)程序了。Python的交互模式和直接運(yùn)行.py文件有什么區(qū)別呢?
1、直接輸入python進(jìn)入交互模式,相當(dāng)于啟動(dòng)了Python解釋器,但是等待你一行一行地輸入源代碼,每輸入一行就執(zhí)行一行。
2、直接運(yùn)行.py文件相當(dāng)于啟動(dòng)了Python解釋器,然后一次性把.py文件的源代碼給執(zhí)行了,你是沒(méi)有機(jī)會(huì)以交互的方式輸入源代碼的。
3、用Python開發(fā)程序,完全可以一邊在文本編輯器里寫代碼,一邊開一個(gè)交互式命令窗口,在寫代碼的過(guò)程中,把部分代碼粘到命令行去驗(yàn)證,事半功倍!
Python解釋器易于擴(kuò)展,可以使用C或C++(或者其他可以通過(guò)C調(diào)用的語(yǔ)言)擴(kuò)展新的功能和數(shù)據(jù)類型。Python 也可用于可定制化軟件中的擴(kuò)展程序語(yǔ)言。Python豐富的標(biāo)準(zhǔn)庫(kù),提供了適用于各個(gè)主要系統(tǒng)平臺(tái)的源碼或機(jī)器碼。小伙伴們要想獲得更多python文件操作的內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)!
網(wǎng)頁(yè)標(biāo)題:python文件操作方法有哪些?
轉(zhuǎn)載源于:
http://weahome.cn/article/sohehs.html