日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python文件管理

發布時間:2024/1/17 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python文件管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文件沒有修改操作,修改的方式為打開文件--讀取文件--內存中編輯文件--將內容寫入文件

打開文件方式

with open('a.txt','w') as f: #操作系統自動關閉文件f.write('xxx\n')f = open('a.txt','w',encoding='gbk') f.write('xxx') f.close()

文件打開模式

  • r 只讀模式。如果文件不存在,返回異常FileNotFoundError,默認值;
  • w 覆蓋寫模式,文件不存在則創建,存在則完全覆蓋;
  • x 創建寫模式,文件不存在則創建,存在則返回異常FileExistError;
  • a 追加寫模式,文件不存在則創建,存在則在文件最后追加內容;
  • t 文本文件模式,默認值;
  • b 二進制文件模式;
  • ‘+' 與r/w/x/a一同使用,在原功能的基礎上增加同事讀寫的功能

文件打開時+表示同時讀寫某個文件

  • r+ 讀寫
  • w+ 寫讀
  • x+ 寫讀
  • a+ 寫讀

b表示以字節的方式操作(對linux無影響,如果需要跨平臺性能好文件打開關閉建議采用rb的方式)

  • rb或r+b
  • wb或w+b
  • xb或x+b
  • ab或a+b

f.readlines() 一次讀取文件,讀取后的文件為列表

二進制文件讀取,不能指定編碼,只能讀取文件之后使用decode方式進行解碼

f = open(‘a.txt’,'rb') data = f.read().decode('utf-8') print(data) f.close

二進制文件寫入,不能指定編碼,只能將內容先轉換成bytes類型

#方法一 f = open(‘a.txt’,'wb') f.write(bytes('11111\r\n',encoding='utf-8')) f.close() #方法二 a = open(‘a.txt’,'wb') a.write('楊戩'.encode('utf-8')) a.close()

文件內容從內存寫入到磁盤

一般需要f.close()的時候才能夠寫入文件,如果不關閉文件,需要使用下面命令寫入到文件中

f.flush()

文件光標位置

print(f.tell()) #讀取當前光標位置 f.seek() #修改光標位置,按照**字節**計算 f.read(4) #讀取4個**字符**

seek三種模式

seek(光標移動多少位,模式)

  • 0 默認模式,從文件開頭
  • 1 以光標當前位置進行seek,相對seek
  • 2 從文件末尾進行seek 如seek(-10,2)

使用seek案例

讀取文件最后一行

f = open(日志文件,'r') for i in f:offs=100 #定義偏移量,一行大概10個字節 while True:f.seek(offs,2)data = f.readlines()if len(data) > 1:print(‘文件的最后一行是%s’, %(data[-1].decode('utf-8')))breakoffs*=2

循環文件方式,要一行就讀取一行,減小內存占用

for i in f:print(i)

跨平臺的換行符讀取

f.open("a.txt","r",newline="") #讀取真正的換行符

轉載于:https://www.cnblogs.com/chrrydot/p/9788473.html

總結

以上是生活随笔為你收集整理的python文件管理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。