1、簡單open寫法
了解一下完整格式:
open
(file
, mode=
'r', buffering=
none
, encoding=
none
, errors=
none
, newline=
none
, closefd=
true
)
引數說明:
首先我們寫入如下data.txt檔案
注意一下幾點理解:
f =
open
('c:/users/desktop/data.txt'
,'r'
,encoding =
'utf-8'
)for line in f.readlines():
print
(line)
f.close(
)
結果輸出:aa 11 bb 22 cc 33
**置)
檔案使用完畢後必須關閉,因為檔案物件會占用作業系統的資源,並且作業系統同一時間能開啟的檔案數量也是有限的;
這種寫法繁瑣,而且不實用。
2、高階open寫法
python引入了with語句來自動幫我們呼叫close()方法
當使用readlines()方法時:
with
open
('c:/users/desktop/data.txt'
,'r'
,encoding =
'utf-8'
)as f1:
list
= f1.readlines(
)print
(list
)
結果輸出:['aa\n', '11\n', 'bb\n', '22\n', 'cc\n', '33\n']
可以看見,每一行後面都會有\n。
當使用read()和readline()時:
with
open
('c:/users/ysh/desktop/data.txt'
,'r'
,encoding =
'utf-8'
)as f1:
list
= f1.readline(
)print
(list
)
in:print
(list)aa
with
open
('c:/users/ysh/desktop/data.txt'
,'r'
,encoding =
'utf-8'
)as f1:
list
= f1.read(
)print
(list
)
in:print
(list)aa
11bb
22cc
33
可以看見,這兩種方法並沒有\n,其實是有輸出\n的,因為print裡的』\n』被認為是換行的意思,所以\n就消失了。
對於readlines()方法產生的\n,可以採用rstrip()方法來去掉』\n』
with
open
('c:/users/desktop/data.txt'
,'r'
,encoding =
'utf-8'
)as f1:
list
= f1.readlines(
)# print(list)
for i in
range(0
,len
(list))
:list
[i]=
list
[i].rstrip(
'\n'
)#rstrip()移除右邊的空格
print
(list
)
結果輸出:['aa', '11', 'bb', '22', 'cc', '33']
python高階讀取檔案 Python讀取檔案內容
開啟檔案之後,就可以讀取檔案的內容,檔案物件提供多種讀取檔案內容的方法。開啟test.txt檔案 f open test.txt r 開啟test.txt檔案 f.close 關閉檔案 test.txt檔案有以下內容 hello world.hello python.hello imooc.讀取若干...
Python檔案讀取
python提供了多種方法實現檔案讀取操作 1 read 2 readline 3 readlines 4 xreadlines 很多人也在糾結到底應該選擇哪種方式,甚至疑問在處理大檔案時應該選擇哪種方式,因為擔心檔案過大導致記憶體佔用率過高甚至無法完全載入。其實,這個問題是多餘的,在引入了迭代器和...
python檔案讀取
1.讀取txt檔案 read 讀取整行檔案 readline 讀取一行資料 readines 讀取所有行的資料 讀取txt檔案 user file open user info.txt r lines user file.readlines forline inlines username line...