1
from sys import argv
script, filename = argv
txt = open(filename)
print "Here's your file %r:" % filename
print txt.read()
當我運行此代碼時,使用文本文件的名稱作爲參數'ex15_sample.txt'然後它返回文本文檔中的內容。打開和讀取文件
但是,當我最後一行改爲:
print txt
然後,它會顯示這樣的:
<open file 'ex15_sample.txt', mode 'r' at 0x004A6230>
我真的不知道有什麼區別,因爲txt
變量應該被打開文件。我知道read
命令讀取文件,但在文檔中說open
返回一個文件對象,我不確定這意味着什麼。
但是什麼是文件對象?它的目的是什麼?! – Alias
它的目的是將有關文件的操作包裝到文件對象中。例如,如果您打開的文件有3GB,您是否希望Python自動將其存儲在變量中?這會消耗大量內存,文件對象可以分塊讀取並執行不同的操作,而不需要將整個文件實際存儲在RAM中。 –