文件操作,重點,日常使用!!!
阿新 • • 發佈:2018-03-21
tel 打印 count str 光標位置 lee 程序運行時間 移動 一行
文件操作
對文件操作流程
- 打開文件,得到文件句柄並賦值給一個變量
- 通過句柄對文件進行操作
- 關閉文件
打開文件的模式有:
- r,只讀模式(默認)。
- w,只寫模式。【不可讀;不存在則創建;存在則刪除內容;】
- a,追加模式。【可讀; 不存在則創建;存在則只追加內容;】
"+" 表示可以同時讀寫某個文件
- r+,可讀寫文件。【可讀;可寫;可追加】
- w+,寫讀
- a+,同a
"U"表示在讀取時,可以將 \r \n \r\n自動轉換成 \n (與 r 或 r+ 模式同使用)
- rU
- r+U
"b"表示處理二進制文件(如:FTP發送上傳ISO鏡像文件,linux可忽略,windows處理二進制文件時需標註)
- rb
- wb
- ab
基礎
data =open(‘yesterday‘,‘r‘,encoding=‘utf-8‘) #文件句柄 讀 data =open(‘yesterday‘,‘w‘,encoding=‘utf-8‘) #文件句柄 寫 會覆蓋原來的文件,慎用!!!! data =open(‘yesterday‘,‘a‘,encoding=‘utf-8‘) #文件句柄 添加 data =open(‘yesterday‘,‘r+‘,encoding=‘utf-8‘) #文件句柄 讀寫 有用,在最後一行寫 data =open(‘yesterday‘,‘w+‘,encoding=‘utf-8‘) #文件句柄 寫讀 沒用,會覆蓋內容 data =open(‘yesterday‘,‘a+‘,encoding=‘utf-8‘) #文件句柄 追加讀 沒卵用
data =open(‘yesterday‘,‘wb‘) #文件句柄 二進制文件 data.write(‘hellow binary\n‘.encode()) #不加encode()報錯,需要轉化二進制 data.close()
實例1
移動光標
f=open(‘yesterday‘,‘r‘,encoding=‘utf-8‘) print(f.readline()) print(f.readline())print(f.readline()) print(f.readline()) print(f.tell()) #顯示目前光標位置 print(f.seek(0)) #回到起點 print(f.readline()) print(f.tell()) #顯示光標當前位置
實例2
fulsh用法,進度條
import sys
import time
count = 0
star= time.clock() #程序起始時間
for i in range(20):
if count <9:
sys.stdout.write(‘*‘) #stdout 標準顯示
sys.stdout.flush() #flush 立即執行
time.sleep(0.5)
count+1
count+1
end =time.clock() #結束
print("\nread:%f s"%(end-star)) #打印程序運行時間 這是我自己百度查的!!!!穩!
文件操作,重點,日常使用!!!