日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python內(nèi)置十大文件操作

日常對于批量處理文件的需求非常多,經(jīng)常需要用Python寫腳本調(diào)用外部文件!

本次整理Python中最常用的十大文件操作方法,直接拿來用就行啦!

1、創(chuàng)建和打開文件

想要操作文件需要先創(chuàng)建或代開指定文件并創(chuàng)建文件對象,用open()方法實現(xiàn),其語法格式如下:

file=open(filename[, mode[, buffering]])

參數(shù)說明

  •  file:創(chuàng)建的文件對象
  •  filename:要創(chuàng)建或打開的文件名稱,需使用單引號會雙引號括起來。如果要打開的文件和當(dāng)前文件在同一目錄,直接寫文件名即可;否則,指定完整路徑。
  •  mode:可選參數(shù),用于指定打開模式,默認(rèn)為只讀(即r)
  •  buffering:可選參數(shù),用于指定讀寫文件的緩存模式,值為0表示不緩存,值為1表示緩存;如果大于1,則表示緩沖區(qū)的大小。默認(rèn)緩存模式。

默認(rèn)情況下,打開一個不存在的文件,會顯示異常。

解決方法:

  •  當(dāng)前目錄下(執(zhí)行文件相同的目錄)創(chuàng)建一個test.txt文件
  •  調(diào)用open()方法時,指定mode參數(shù)值為w、w+、a、a+,若不存在,則創(chuàng)建。

不同模式打開完全說明。

注意:打開文件默認(rèn)采用GBK編碼,當(dāng)被打開文件不是GBK編碼時,可能會顯示異常。解決方案:1、直接修改文件的編碼2、在打開文件時,直接指定使用的編碼方式(推薦)。

file=open('test.txt','r',encoding='utf-8')

2、關(guān)閉文件

打開文件后,需要及時關(guān)閉,以免占用資源,使用close()方法實現(xiàn)。

file.close()

注:使用close()方法時會先刷新緩沖區(qū)還沒有寫入的信息,然后再關(guān)閉文件。

3、打開文件使用with語句

打開文件需要及時關(guān)閉,如果忘記關(guān)閉可能發(fā)生意想不到的問題。另外,如果在打開文件時顯示異常,那么將導(dǎo)致文件不能及時關(guān)閉。為避免此類問題,可以使用Python提供的with語句,從而無論是否顯示異常,都能保證with語句執(zhí)行完畢后關(guān)閉已經(jīng)打開的文件?;菊Z法如下:

with expression as target:
with-body

參數(shù)說明:

  •  expression:指定表達式,可以是打開文件的open()方法。
  •  target:用于指定一個變量,將expression的結(jié)果保存到該變量中。
  •  with-body:用于指定with語句體,可以是執(zhí)行with語句后相關(guān)的一些操作語句,也可以直接pass。
with open('test.txt','w') as file
pass

4、寫入文件內(nèi)容

Python文件對象提供write()方法,向文件中寫入內(nèi)容。

file.write(str)

其中,file為打開的文件對象;str為要寫入的字符串。注意,寫入前提有寫入權(quán)限,指定打開模式為w(可寫)或a(可追加)

使用open()函數(shù),將模式改為w或a打開文件來創(chuàng)建文件對象。w模式下會覆蓋舊數(shù)據(jù)寫入新數(shù)據(jù),a模式下可在原有數(shù)據(jù)基礎(chǔ)上增加新數(shù)據(jù)。

5、讀取數(shù)據(jù)

打開文件后,除了向其寫入或追加內(nèi)容,還有讀取文件中內(nèi)容。需要知道文件打開模式為r(讀)或r+(讀寫)主要有以下3種情況:

  • 讀取指定個數(shù)字符
  •  file.read([size])——其中,size為可選參數(shù),如果省略,則一次讀取所有內(nèi)容。
  • 讀取一行
  • file.readline()——每次讀取一行數(shù)據(jù),文件很大時,采用逐行讀取。
  • 讀取所有行
  • file.readlines()——返回字符串列表,每個元素為文件的一行內(nèi)容。
with open('text.txt','r+',encoding='utf-8') as file:
print("讀取前4個字符串")
print(file.read(4))
print("讀取一行")
print(file.readline())
print("讀取所有行")
print(file.readlines())

注:如果想要讀取部分內(nèi)容,可以先使用文件對象seek()方法將文件指針移動到新的位置,然后再用read()方法獲取。

file.seek(offset[,whence]).其中,offset參數(shù)用于指定移動的字符串個數(shù),按一個漢字占兩個字符;whence值為0表示從文件頭開始計算,1表示從當(dāng)前位置開始計算,2表示從文件尾開始計算,默認(rèn)0.

6、復(fù)制文件

Python復(fù)制文件需要使用shutil模塊的copyfile()方法。

shutil.copyfile(src,dst)

其中,src:要復(fù)制的源文件;dst:復(fù)制到的目標(biāo)文件。

7、移動文件

Python移動文件需要使用shutil模塊的move()方法。

shutil.move(src,dst)

其中,src:要移動的源文件;dst:移動到的目標(biāo)文件。

8、重命名文件

Python重命名文件需要使用os模塊的rename()方法。

os.rename(src,dst)

其中,src:指定要重命名的源文件;dst:指定重命名后文件。為確保正常執(zhí)行,可以使用os.path模塊的exists()方法判斷要操作的文件是否存在。

9、刪除文件

Python中刪除文件需要使用os模塊的remove()方法。

os.remove(path)

其中,path:指定要刪除的文件路徑,相對路徑或絕對路徑。

10、獲取文件基本信息

文件本身包含一些信息,如文件最后一次訪問時間、最后一次修改時間、文件大小等基本信息。通過os模塊的stat()方法獲取。

os.stat(path)

以上就是Python內(nèi)置的十大常用的文件操作方法。


網(wǎng)站標(biāo)題:Python內(nèi)置十大文件操作
分享路徑:http://m.5511xx.com/article/djdddip.html