讀檔案函式
a.read(size)
a.readline(size)
a.readlines(hint)
寫檔案函式
a.wirte(s)
a.writelines(lines)
a.seek(offset)
《變數名》 = open(《檔名》,《開啟模式》)
檔名:檔案路徑和名稱
絕對路徑
windows系統中檔案的路徑方式:d:\pye\f.txt
在linux系統中檔案的路徑方式:d:/pye/f.txt
由於在python中\是轉義符,因而檔案路徑採用兩種方式
單斜槓:d:/pye/f.txt
雙反斜槓:d:\\pye\\f.txt
相對路徑:如果當前程式儲存在d盤根目錄下,那麼呼叫檔案路徑
./pye/f.txt
如果當前程式在pye目錄中,那麼呼叫檔案路徑
f.txt
如果不使用完整路徑,可以使用特殊字元雙點(..)來向前移動乙個目錄
../f.txt
開啟模式:文字模式/二進位制模式
)#文字形式、唯讀模式、預設值
f=open
("f.txt"
,"rt")#文字形式、唯讀模式、同預設值
f=open
("f.txt"
,"w") #文字形式、覆蓋寫模式
f=open
("f.txt"
,"a+")#文字形式、追加寫模式+讀檔案
f=open
("f.txt"
,"x") #文字形式、建立寫模式
f=open
("f.txt"
,"b") #二進位制形式、唯讀模式
f=open
("f.txt"
,"wb")#二進位制形式、覆蓋寫模式
《變數名》.close()
在程式中如果檔案開啟了,沒有寫關閉語句,只要程式正常退出,檔案會被自動關閉
讀入一行內容,如果給出引數,讀入該行前size長度 >>>s=f.readline() ------>中國是乙個偉大的國家!
.readall()
讀入整個檔案內容,返回乙個字串或位元組流
檔案的全文本操作:
遍歷全文本:
fname=
input()
fo=open
(fname,
"r")
txt=fo.read(
)//儲存為字串txt
#對全文txt進行處理
fo.close(
)#一次讀入,全部處理
#如果檔案體量過大,會耗費時間和資源
fname=
input()
fo=open
(fname,
"r")
txt=fo.read(2)
while txt !="":
txt=fo.read(2)
fo.close(
)#按數量讀入,逐步處理
檔案的逐行操作:
逐行遍歷檔案
fname=
input()
fo=open
(fname,
"r")
for line in fo.readlines():
print
(line)
fo.close(
)#一次讀入,分行處理
fname=
input()
fo=open
(fname,
"r")
for line in fo:
print
(line)
fo.close(
)#分行讀入,逐行處理
["中國"
,"法國"
,"美國"
]fo.writelines(ls)
fo.seek(0)
#輸入完之後,將指標放回檔案開頭,而後列印輸出才有內容
for line in fo:
print
(line)
fo.close(
)
有時檔案讀寫時可能會產生錯誤,導致f.close()語句不會被執行,檔案無法正常關閉,所以為了保證無論是否出錯都能正確關閉檔案,python引入了with語句來自動呼叫close()方法
#讀檔案
with
open
('../f.txt'
,'r'
)as f:
s=f.read(
)print
(s)
學習學習再學習
如果乙個技能足夠複雜 比如從零學程式設計 那就不要指望讀完一本書就可以打天下。多買幾本書同類的書 因為每個作者的出發點是不一樣的,哪怕對同乙個概念都有不同的解釋說明。理解知識的重要過程之一就如牛的反芻一樣,要嚼一遍 嚥下去 再吐出來 再嚼一遍 再嚥下去 所以,既然一本書可以讀幾遍,那麼同一話題多應該...
學習 學習 再學習
原本要使用vs2005開發乙個b s專案的,沒有想到只能先暫時停停了,居然跟不上技術的發展了,呵呵,一直使用delphi delphi也沒能跟上 沒有想到轉到vs2005上竟然有這麼多要學的東西,當然目的是了做乙個好的系統。最近一直在學習asp.net ajax,雖然專案停了,但是我覺得值得,有很多...
只是學習 學習 再學習
通過做 讓我學會了很多東西 什麼 flash div css html js as 雖然都只是皮毛 不過 算是了解那麼一點點吧 哈哈 我還突然發現 我的 數學和英語 進步了不少 而且還都是很實用的 比在學校的進步可快多了 那句話說的很不錯 在你了解了一些皮毛之後你會發現很多東西你都必須去學。因為少一...