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...