Python:讀取文件 read 函數
最近更新時間 2020-01-18 09:40:39
Python 的 open 方法返回一個文件對象,文件對象的 read 方法用於讀取文件內容。
read 函數是返回字符串或者二進制文件,取決於 open 函數打開的模式,文本模式下返回字符串,二進制模式下返回字節對象。
説明
file.read(size)
- size
- 可選參數。當 size 缺省或為負數時,將讀取並返回整個文件內容。當取其他值時,將返回至多 size 個字符或者 size 個字節。
如果已到達文件末尾,f.read() 返回一個空字符串,可用於判斷文件是否讀完。
範例
讀取文件內容
#!/usr/bin/env python3
with open('docsxyz.md') as f:
content = f.read()
print(content)
docsxyz.com docsxyz
注意:如果讀取的文件是內存的兩倍會出現問題。
讀取3個字符
#!/usr/bin/env python3
with open('docsxyz.md') as f:
content = f.read(3)
print(content)
doc
讀取一行數據
f.readline() 函數從文件中讀取一行數據,換行符(\n)留在字符串末尾。如果文件不以換行符結尾,則在文件的最後一行省略。
#!/usr/bin/env python3
with open('docsxyz.md') as f:
content = f.readline()
print(content)
docsxyz.com
循環讀取數據
要從文件中讀取行,你可以循環遍歷文件對象。這是內存高效,快速的。
#!/usr/bin/env python3
f = open('docsxyz.md')
for line in f:
print(line, end='')
f.close()
列表讀取數據
如果你想以列表的形式讀取文件中的所有行,你也可以使用 list(f)
或 f.readlines()
。
#!/usr/bin/env python3
f = open('docsxyz.md')
print(list(f))
['docsxyz.com\n', 'docsxyz\n']