Python學習筆記|Python之檔案操作
Python之檔案操作
1.檔案開啟
a.函式原型:open(filename,mode)
filename
檔名,要開啟的檔名
mode
r
:只讀的方式開啟,如果檔案不存在會提示錯誤,
w
:只寫的方式開啟,如果檔案存在則覆蓋,不存在則建立
a
:開啟一個檔案進行追加內容,新寫的內容會追加在檔案的尾部,如果存在則開啟,不存在則建立新的檔案
對於以上的三種模式 ,分別有對應的另一種模式
r+
:讀寫,會將檔案指標調到檔案的頭部
w+
:讀寫,檔案不存在直接建立,存在覆蓋原始檔
a+
:追加讀寫,會將檔案的指標調到檔案的末尾
模式可以省了不寫,不寫時預設為只讀模式
- 總結:
- 模式
r
及r+
:r+可以向開啟的檔案中write寫入內容,而r不能寫入內容,否則報IOError錯誤(File not open for writing)- 模式
w
及w+
:w+可以從開啟的檔案中read讀內容,而w不能從檔案中讀取內容,否則報IOError錯誤(File not open for reading)
- 模式
a
及a+
:不存在會建立,並檔案指標指向結尾的位置,不能呼叫read讀,否則報IOError,而a可以read讀檔案內容 - 建立檔案:模式
r
及r+
均不會建立檔案,其他模式均會建立檔案
b.使用with open as files開啟檔案
使用with open方式開啟不需要呼叫close關閉檔案,python會判斷什麼時候需要自動關閉檔案,如下:
with open('python.txt','r') as files:
另:有關模式,同上
2.檔案的操作
A. 讀檔案
read(num)
讀取固定個數的內容
with open('python.txt','r') as files:
content = files.read(4)
print (content)
read
讀取所有內容
with open('python.txt','r') as files:
content = files.read()
print (content)
readline
按行讀取,返回的是一個列表,列表中的每個元素是為每一行的內容
with open('python.txt','r') as files:
content = files.readlines()
print (content)
B. 寫檔案
write
with open('python.txt','a') as files:
contents = '你好,請幫忙再寫入一句話,你好,java'
files.write(contents)
3.檔案指標
tell
獲取檔案指標位置
函式原型:tell()
with open('python.txt','r') as files:
content = files.read()
print (content)
# tell讀取檔案指標
# position = files.tell()
# print('檔案的位置為%d'%position)
seek
設定檔案指標位置
函式原型:seek(offset,whence)
offset:偏移位元組數,>0表示正向偏移,<0表示負向偏移
whence:whencn代表那個位置開始偏移,具體有:0(從頭開始),1(當前位置開始),2(檔案末尾)
如:
with open('python.txt','r') as files:
#從頭開始偏移,並正向偏移6個位元組
files.seek(6,0)
contents = files.read(2)
print('檔案內容為:%s'%contents)
position = files.tell()
print('檔案的位置為%d'%position)
#從尾開始偏移,並反向偏移6個位元組
files.seek(-6,2)
contents = files.read(4)
print('檔案內容為:%s'%contents)
4.檔案關閉
close
關閉檔案,如果使用了with open開啟的檔案則不需要呼叫close
files = open('python.txt','r')
files.close()
5.tips
逐行讀取 ,結合for迴圈,可以不使用read函式讀取
with open('python.txt','r') as files:
i = 1
for line in files:
#沒有使用read
print('這是%d行,內容為%s'%(i,line))
i+=1
相關文章
- Python學習筆記|Python之特殊檔案Python筆記
- python學習筆記:第8天 檔案操作Python筆記
- (十七)Python學習之檔案操作Python
- python file 檔案操作筆記Python筆記
- Python學習筆記|Python之程式Python筆記
- Python學習筆記-字串及操作Python筆記字串
- Python學習筆記之序列Python筆記
- Python學習筆記|Python之yield理解Python筆記
- Python學習筆記|Python之索引迭代Python筆記索引
- Python學習筆記|Python之特殊方法Python筆記
- Java學習筆記之檔案Java筆記
- Python學習筆記|Python之物件導向Python筆記物件
- Python學習筆記|Python之推導式Python筆記
- Python學習筆記|Python之執行緒Python筆記執行緒
- Python 3 學習筆記之——鍵盤輸入和讀寫檔案Python筆記
- Python模組學習:zipfile zip檔案操作Python
- python筆記-資料型別&檔案操作Python筆記資料型別
- python學習之讀寫檔案Python
- Python零基礎學習筆記(三十二)——list/tuple/dict/set檔案操作Python筆記
- Python零基礎學習筆記(三十)——讀檔案Python筆記
- Python學習筆記|Python之pycache資料夾Python筆記
- Python學習筆記|Python之正規表示式Python筆記
- 7、python之檔案操作Python
- 【學習筆記】python筆記Python
- Python學習筆記Python筆記
- python菜鳥教程學習13:檔案操作Python
- Python學習筆記——爬蟲之Scrapy專案實戰Python筆記爬蟲
- 學習筆記專案實踐(python)筆記Python
- Python學習筆記:第3天 字串的操作Python筆記字串
- Python學習筆記(隨筆)Python筆記
- Python學習筆記(一)——初學PythonPython筆記
- Python 3 學習筆記之——物件導向Python筆記物件
- Python模組學習:tempfile 臨時檔案(夾)操作Python
- python學習筆記4Python筆記
- python學習筆記(二)Python筆記
- Python學習筆記 - aiohttpPython筆記AIHTTP
- Python 學習筆記(一)Python筆記
- Python學習筆記 - asyncioPython筆記