2017-03-02 112 views
-11

您好,除了使用open()之外,還有一種替代方法可以讀取python中的文本文件。我使用下面的代碼,但我想知道是否有任何其他方法來做到這一點。謝謝。使用python讀取文本文件

data = open("thefile.txt","r") 
+2

爲什麼你想要一個替代? –

+0

不是真正的替代方法,但是你可以在開放的情況下使用'with'。 https://docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects – sangheestyle

+1

@sangheestyle - 他應該... – linusg

回答

0

如果你想逐行閱讀,你可以這樣做。

with open('filename' ,'r') as f: 
     for line in f: 
      print line 
0

您還可以使用上下文管理是這樣的:

with open('filename', 'r') as textfile: 
    textfile.read() 

在你的榜樣,你只需打開該文件,你不讀任何東西。對於這樣的基本問題,你應該參考python.org上的官方python教程。

+0

但它在pytest中的失敗 –

+0

@AurauraKumar「但它在pytest中的失敗」是**超級**無益。什麼是失敗?你得到的錯誤是什麼?你確定這是打開'打開'的電話嗎? *如果你問人們需要幫助,你需要給他們足夠的信息,以便他們能夠幫助你。*請記住,這些*志願者*試圖幫助你解決你的問題。沒有人願意這樣做,所以請不要假設有人會在您提供足夠的信息來複制或完全理解問題時嘗試挖掘和複製您的問題。 – SethMMorton

+0

在進行unittests時,我想你使用pytest做的時候,通常不會依賴外部文件的存在。請閱讀有關「嘲弄」的內容。如果您測試了從文件中讀取的內容,它當然會失敗,因爲您剛纔按照上面的說明打開它。之後你必須閱讀內容。 – barrios