不多贅述,檔案部分比較簡單,看**就懂,直接上**:
file = open('text.txt')
print(file.read())
file.close()
print(file.mode)
print(file.encoding)
print(file.closed)
##今天又是學習python的一天啊!
rcp936
true
用途:開啟或建立乙個檔案;
完整語法格式:
file = open(file_name,mode='r',buffering=-1,encoding=none,errors=none,newline=none,closefd=true,opener=none)
一般常用的只有前兩個而已;
除了第乙個引數必需,後面均可選,未指定mode,則預設mode為 「r」,即唯讀;
buffering引數用於設定緩衝區,緩衝區能夠大大提高程式執行i/o的效能。
buffering為0或者false時不設定緩衝區;
為1或者true時設定緩衝區,緩衝區大小為預設值;
為大於1的數時設定緩衝區,緩衝區大小為被該數指定,單位為位元組;
為負數時設定緩衝區,緩衝區大小為預設值;
其它方法用到再說;
當我們不是很確定究竟什麼時候該關閉檔案時,利用with as語句可以幫助實現自動關閉檔案,你儘管使用,python會在恰當的時候把檔案關閉;
with open('text.txt') as file:
contents = file.read()
print(contents)
print(file.closed)
##今天又是學習python的一天啊!
true
當檔案過大或者其它情況下,我們可以逐行讀取檔案,具體有以下幾種方法:
for迴圈:
file = open('text.txt')
for line in file:
print(line)
file.close()
##今天又是
學習python的
一天啊!
可以看到逐行讀取每行之間會多出空白行,這是因為每行結尾的換行符也被print輸出了的緣故,可以借助rstrip方法消除空白行;
readline()方法:
readline()方法:
file = open('text.txt')
while true:
line = file.readline()
if not line : break
print(line.rstrip())
file.close()
## 今天又是
學習python的
一天啊!
readline()方法裡面也可以指定size引數,表示每行可以讀取多少字元;
readlines()方法:
file = open('text.txt')
while true:
line = file.readlines()
if not line : break
print(line)
file.close()
##['今天又是\n', '學習python的\n', '一天啊!']
readlines()方法返回乙個字串列表,根據指定引數的不同,返回的列表數目也不一樣,預設返回乙個列表;
write()函式:
用途:向檔案中寫入內容;
file = open('try.txt','w')
str = '今晚月色真美!'
file.write(str)
f.close()
上述**已經完成了向檔案try.txt中寫入資料的過程;如果想換行寫入可以手動加入\n字元,但write的引數只能是字串;
需要注意的是我們寫入的內容最開始都是在緩衝區內的,只有當呼叫close()方法時,python才會把這些資料送進檔案內,因此如果沒有close(),那麼檔案仍然沒有我們寫入的內容;
如果寫入資料後不想立即關閉檔案可以使用flush()函式,它會把緩衝區內的資料送進檔案內;
file = open('try.txt','w')
str = '今晚月色真美!'
file.write(str)
f.flush()
對於以二進位制格式開啟的檔案,寫入時可以不設定緩衝區,寫入資料將直接送進檔案內,但以文字格式開啟的檔案則必須設定緩衝區;
writelines()函式:
writelines函式與write函式差不多,但是write的引數是乙個字串,writelines的引數可以是乙個字串列表,但是writelines函式寫入資料時,不會在每行結尾自動加換行符;
file = open('try.txt','w')
str = ['——今晚月色真美!\n','——我知道。']
file.writelines(str)
file.close()
## try.txt:
——今晚月色真美!
——我知道。
菜鳥程式設計
廖雪峰的官方**
c語言中文網
以及《python程式設計-從入門到實踐》
Python檔案讀寫
今天在看python檔案讀寫操作,發現python file name mode buffering file 函式用於建立乙個file物件,它有乙個別名叫open 可能更形象一些,它們是內建函式。來看看它的引數。它引數都是以字串的形式傳遞的。name是檔案的名字。mode 是開啟的模式,可選的值為...
python檔案讀寫
檔案讀寫模式 模式 描述 r以讀方式開啟檔案,可讀取檔案資訊。w以寫方式開啟檔案,可向檔案寫入資訊。如檔案存在,則清空該檔案,再寫入新內容 a以追加模式開啟檔案 即一開啟檔案,檔案指標自動移到檔案末尾 如果檔案不存在則建立 r 以讀寫方式開啟檔案,可對檔案進行讀和寫操作。w 消除檔案內容,然後以讀寫...
python 讀寫檔案
python讀寫檔案在文字不大的情況可以用正常的 open 然後讀入 readline行讀入 或者整體讀入 read readlines 基本知識 file open path,r 說明 第乙個引數是檔名稱,包括路徑 第二個引數是開啟的模式mode r 唯讀 預設。如果檔案不存在,則丟擲錯誤 w 只...