python文件操作方法有哪些?

發(fā)布時間:2023-11-22
python由荷蘭數(shù)學和計算機科學研究學會的guido van rossum于1990 年代初設計,作為一門叫做abc語言的替代品。python提供了高效的高級數(shù)據(jù)結(jié)構(gòu),還能簡單有效地面向?qū)ο缶幊獭ython語法和動態(tài)類型,以及解釋型語言的本質(zhì),使它成為多數(shù)平臺上寫腳本和快速開發(fā)應用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用于獨立的、大型項目的開發(fā)。下面就由小編和大家講一講python文件操作方法有哪些。
一、文件讀取全文本操作
在一定場景下我們需要把文本全部內(nèi)容讀取出來,進行處理。python提供三種函數(shù)讀取文件,分別是read readline readlines,
read():讀取文件的全部內(nèi)容,加上參數(shù)可以指定讀取的字符。
readline():讀取文件的一行。
readlines():讀取文件的所有行到內(nèi)存中。
不同場景下我們可以選擇不同函數(shù)對文件進行讀取。
1、方法一
file_name = input(請輸入你要打開的文件的完整路徑及名稱)
file= open(file_name, r)
txt=file.read()
# 全文本的處理
file.close()
使用read函數(shù)將文件中的內(nèi)容全部讀取,放在字符串變量txt中。這樣操作適合于文本較小,處理簡單的情況,當文件較大時,這種方式處理時不合適的。一次性讀取較大的文件到內(nèi)存中,會耗費較多的時間和資源。這時候分批處理效果更好。
2、方法二
file_name = input(請輸入你要打開的文件的完整路徑及名稱)
file= open(file_name, r)
txt= file.read(4)
# 文本的處理while txt != txt= file.read(4)
# 批量文本處理
file.close()
這種方法適合于分批處理文本信息,每次批量讀入,批量處理,不會對內(nèi)存造成較大的壓力。
3、方法三
file_name = input(請輸入你要打開的文件的完整路徑及名稱)
file= open(file_name, r)for line infile.readlines():
# 處理每一行數(shù)據(jù)
file.close()
這種處理方式適合處理以行為分割特點的文本,并且文本較小,因為這種處理方式需要一次性把文件所有內(nèi)容讀取到內(nèi)存中。
4、方法四
file_name = input(請輸入你要打開的文件的完整路徑及名稱)
file= open(file_name, r) # 這里的file時文件句柄for line infile:
# 處理每一行數(shù)據(jù)
file.close()
這種方式和方法三中的區(qū)別是分行讀入,逐行處理,不會一次性把文件所有內(nèi)容都讀入到內(nèi)存中,對一些大文件的處理是很有效的。
二、文件寫入文本操作
文件寫入有兩種寫入函數(shù)和一種輔助支持。
write():向文件中寫入一個字符或者字節(jié)流
writelines():將一個元素全為字符串的列表寫入到文件中 需要注意的是,writelines寫入列表元素的時候會把列表元素的內(nèi)容拼接到一起寫入,不會有換行和空格 。
seek(): 輔助寫入函數(shù)offset偏移量參數(shù)代表含義如下
0 - 文件開頭
1 - 當前位置
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ù),這時候發(fā)現(xiàn)是沒有任何內(nèi)容的
file.close()
我們增加一行代碼就可以讀取到寫入的文件內(nèi)容,利用seek()函數(shù)調(diào)整寫操作指針的位置,可以實現(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ù)據(jù)。
file.close()
三、如何執(zhí)行python文件
用文本編輯器寫python程序,然后保存為后綴為.py的文件,就可以用python直接運行這個程序了。python的交互模式和直接運行.py文件有什么區(qū)別呢?
1、直接輸入python進入交互模式,相當于啟動了python解釋器,但是等待你一行一行地輸入源代碼,每輸入一行就執(zhí)行一行。
2、直接運行.py文件相當于啟動了python解釋器,然后一次性把.py文件的源代碼給執(zhí)行了,你是沒有機會以交互的方式輸入源代碼的。
3、用python開發(fā)程序,完全可以一邊在文本編輯器里寫代碼,一邊開一個交互式命令窗口,在寫代碼的過程中,把部分代碼粘到命令行去驗證,事半功倍!
python解釋器易于擴展,可以使用c或c++(或者其他可以通過c調(diào)用的語言)擴展新的功能和數(shù)據(jù)類型。python 也可用于可定制化軟件中的擴展程序語言。python豐富的標準庫,提供了適用于各個主要系統(tǒng)平臺的源碼或機器碼。小伙伴們要想獲得更多python文件操作的內(nèi)容,請關注我們!
上一個:光照強弱、土壤、肥料等對花卉生長有何影響?
下一個:普洱茶的傳統(tǒng)工藝制作—曬青:太陽的魔力

意大利brevini調(diào)節(jié)器rem.d.ra.x52g004(remdrax52g004)
設計濾波器堵住開關電源噪聲的方法
怎么樣清除小米帳號嗎,怎么刪除小米賬號
機械硬盤插線示意圖,硬盤對刻線如何連接示意圖
選擇時需要結(jié)合電路機器的特性和使用環(huán)境進行考慮
RC-01W6200FTE在線查庫存,今日報價
各種茶系的茶如何沖泡好喝一些?
RC0805DR-0729K4L,0805 29.4KΩ 0.5% 1/8W 電阻
筆記本硬盤壞掉征兆,壞掉的筆記本硬盤可以取出來再用嗎
三星2016好不好用(三星2016是什么型號)
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos