之前學了一遍文件的open操作,過兩天又搞糊塗了,所以又復習了一遍.
打開文件的方法:
obj = open('文件路徑', '模式')
obj.close() #關閉文件
其中的模式有:
r: 以只讀的形式打開文件,無法對文件進行修改.
w:以只寫的形式打開文件,無法對文件進行讀取.
a:打開一個文件用於追加,如果文件已經存在,文件指針將會放到文件的結尾,如果文件不存在則創建新文件
w+:寫讀,若該文件已經存在則覆蓋寫讀,若不存在則創建
r+:可讀可寫,從當前指針開始寫,如果要在最后面添加一定要read()讀完所有內容.
讀取文件內容
#一次性加載所有內容到內存
obj.read()
#一次性加載所有內容到內存,並根據行分割成字符串
#每次只讀一行
for line in obj:
print line
寫文件內容
obj.write('內容')
#把內容寫入test.log
f = open('test.log','w') #這個方法會從頭開始寫
f.write("this is the 1st line.\n")
f.write('this is the 2nd line.\n')
f.write('this is the 3rd line.\n')
f.write('this is the 4th line.\n')
f.close()
#讀文件的操作
f = open('test.log','r')
# # print(f.read()) #按照原來格式顯示所有
# print(f.readline()) #從指針下一行開始,只讀取一行
# print(f.readlines()) #讀取從下一行開始讀取所有,並以列表顯示
for line in f: #循環讀取每行
print(line,)
f.close()
#注意r+的添加是從當前指針開始添加,所以要添加到尾部一定要f.read()從頭到尾讀一遍,不然就是從頭到為開始覆蓋.
f = open('test.log', 'r+')
print(f.read())
f.write('99\n')
f.write('9\n')
f.write('10\n')
f.close()