python學習 檔案的操作

2022-08-05 12:09:13 字數 2033 閱讀 5425

with關鍵字來幫我們管理上下文

with open(

'a.txt

','w

') as f:

pass

with open(

'a.txt

','r

') as read_f,open('

b.txt

','w

') as write_f:

data=read_f.read()

write_f.write(data)

檔案的操作流程

#

1. 開啟檔案,得到檔案控制代碼並賦值給乙個變數

f=open('

a.txt

','r

',encoding='

utf-8

') #

預設開啟模式就為r

#2. 通過控制代碼對檔案進行操作

data=f.read()

#3. 關閉檔案

f.close()

檔案開啟模式

#

1. 開啟檔案的模式有(預設為文字模式):

r ,唯讀模式【預設模式,檔案必須存在,不存在則丟擲異常】

w,只寫模式【不可讀;不存在則建立;存在則清空內容】

a, 只追加寫模式【不可讀;不存在則建立;存在則只追加內容】

#rb

wbab

注:以b方式開啟時,讀取到的內容是位元組型別,寫入時也需要提供位元組型別,不能指定編碼

#3,『+』模式(就是增加了乙個功能)

r+, 讀寫【可讀,可寫】

w+,寫讀【可寫,可讀】

a+, 寫讀【可寫,可讀】

#4,以bytes型別操作的讀寫,寫讀,寫讀模式

r+b, 讀寫【可讀,可寫】

w+b,寫讀【可寫,可讀】

a+b, 寫讀【可寫,可讀】

常用操作方法

read(3):

1. 檔案開啟方式為文字模式時,代表讀取3個字元

2. 檔案開啟方式為b模式時,代表讀取3個位元組

其餘的檔案內游標移動都是以位元組為單位的如:seek,tell,truncate

注意:  1. seek有三種移動方式0,1,2,其中1和2必須在b模式下進行,但無論哪種模式,都是以bytes為單位移動的

2. truncate是截斷檔案,所以檔案的開啟方式必須可寫,但是不能用w或w+等方式開啟,因為那樣直接清空檔案了,

所以truncate要在r+或a或a+等模式下測試效果。

#

obj = open('txt',mode='r+',encoding='utf-8')

#content = f.read(3) # 讀出來的都是字元

#f.seek(3) # 是按照位元組定游標的位置

#f.tell() 告訴你游標的位置

#print(f.tell())

#content = f.read()

#print(content)

#f.tell()

#f.readable() # 是否可讀

#line = f.readline() # 一行一行的讀

#line = f.readlines() # 每一行當成列表中的乙個元素,新增到list中

#f.truncate(4)

#for line in f:

#print(line)

#f.close()

關閉檔案

with關鍵字來幫我們管理上下文

with open(

'a.txt

','w

') as f:

pass

with open(

'a.txt

','r

') as read_f,open('

b.txt

','w

') as write_f:

data=read_f.read()

write_f.write(data)

Python學習 檔案操作

python使用open來開啟資料流 data open data.txt 下面是乙個讀取乙個檔案,然後逐行輸出的 try data open data.txt for each line in data try role,line spoken each line.split 1 print ro...

python學習 檔案操作

馮諾依曼體系架構 cpu由運算器和控制器組成 檔案io常用操作 開啟操作 open file,mode r buffering 1,encoding none,errors none,newline none,closefd true,opener none 開啟乙個檔案,返回乙個檔案物件 流物件 ...

Python學習 檔案操作

開啟檔案通常使用open 函式開啟檔案。open 函式返回的物件中,存在乙個叫close 的方法。關閉檔案通常使用close 模式 w 重頭寫 檔案不存在的情況下,會自動建立檔案。try file open 藏頭詩.txt w encoding gbk 檔案位置,模式,檔案編碼 except fil...