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']
rss_feed