python之文件操作(基礎)


文件操作作為python基礎中的重點,必須要掌握。


 

1、默認我們在本地電腦E盤新建wp.txt文件進行測試,文件內容如下設置。

2、進行代碼編寫:

f=open("E://wp.txt")#f代表了句柄,意味着,打開文件后,必須要有東西去操作它,這個東西就是句柄,習慣性叫法。

first_line=f.readline()#這里是讀取文件內空的操作,readline指讀取第一行,也就是wp文件里面的"hello A"內容,還有一種形式是readlines,這里表示依次讀取所有行,並且以集合的方式顯示出來first_line: ['1,hello A \n', '2,hello B\n', '\n', '3,hello C']

print("first_line:"first_line)#進行文件內容的打印

print("我是分割線“.center(50,"-”))#打印一條居中的分隔線

data=f.read()#指針移動到條2行,從這里開始讀寫剩余文件內容,read()讀取指針開始里以下的所有內容

print(data)

f.close()關閉文件


 3、打開文件的模式主要有:

只讀模式r #此模式為文件打開方式的默認模式,只能是存在的文件才可以使用此模式,不存在則會報錯。

只寫模式w #此模式下文件如果不存在,則創建新文件,如果文件存在,則清空舊文件內容。但是此模式下文件不可讀,只能創建或者清空舊文件內容。

追加模式a #此模式下文件可以追加,不存在則創建,存在則追加,應該是所有模式里面最常用和最重要的模式。注意的是,打印時,此模式下,指針自動會放到舊文件內容的末尾。

可讀可寫可追加r+ #

寫讀模式w+  #

"U"表示在讀取時,可以將 \r \n \r\n自動轉換成 \n (與 r 或 r+ 模式同使用)

  • rU
  • r+U

"b"表示處理二進制文件(如:FTP發送上傳ISO鏡像文件,linux可忽略,windows處理二進制文件時需標注)

  • rb
  • wb
  • ab 

 4、文件操作:

f.write(str),是寫模式,可以把內容寫到文件中去,並且不會在末尾加換行符,

f.tell(),返回當前位置點,並且把指針返回到原點

f.flush(),把緩沖區的數據寫入到硬盤

f.isatty(),判斷文件是否為終端設備文件

f.next(),返回下一行文件,並且把指針指入到下一行

fp.seek(offset[,whence]) ,將文件打操作標記移到offset的位置。這個offset一般是相對於文件的開頭來計算的,一般為正數。但如果提供了whence參數就不一定了,whence可以為0表示從頭開始計算,1表示以當前位置為原點計算。2表示以文件末尾為原點進行計算。需要注意,如果文件以a或a+的模式打開,每次進行寫操作時,文件操作標記會自動返回到文件末尾。

fp.truncate([size]),把文件裁成規定的大小,默認的是裁到當前文件操作標記的位置。如果size比文件的大小還要大,依據系統的不同可能是不改變文件,也可能是用0把文件補到相應的大小,也可能是以一些隨機的內容加上去。

 

5、with語句:

在打開文件后,為了防止忘記關閉文件,引入with語句,讓其自動關閉。

with open(“E://wp.txt","r") as f :

  pass


6、重要的編碼轉換方式,記住如果是utf-8轉換成GBK,需要,utf-8先decode為unicode,再encode為GBK,如果是GBK轉換為UTF-8,則需要先decode為unicode,再encode為utf-8

 


 

進度條效果:
    import sys,time

for i in range(50):
sys.stdout.write("#")
  sys.stdout.flush()
  time.sleep(0.3)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM