2016-12-14 47 views
1

我用Python3和結果寫入到這樣的文件:如何防止f.write輸出寫入的字符數?

with open(output,'w') as f: 
    f.write('Line count of the log files is: ' + str(line_count) + '. \n') 

f.write()自動返回字符#寫的,是有沒有辦法不輸出呢?我問這是因爲我不想輸出。

謝謝。

+2

在腳本中,'f.write'返回值不會被自動打印,所以您不必擔心它。如果您需要在交互模式下抑制輸出,則可以將返回值分配給虛擬變量。 – user2357112

+1

'_ = f.write(...)'建議先前的評論。 –

回答

2

這不是唯一的file.write()。交互式解釋程序打印任何不會導致None的評估表達式的結果。

>>> for i in range(3): 
...  i # expression evaluates to the value of i 
... 
0 
1 
2 
>>> 

需要注意的兩件事。首先,當您不使用交互式解釋器時,這些將不會顯示,因此可以忽略。

其次,您可以通過分配結果使顯示屏消失。這將表達變成一個聲明。

>>> for i in range(3): 
...  _ = i # underscore is a nice meaningless variable name 
... 
>>> 
+0

我在MacOS中運行Python3時,表達式「file.write()」確實返回值,因爲我使用交互式解釋器,它是什麼?如果我不使用它,則顯示消失,是的,如果我使用命令行在Shell中運行腳本,則不會打印該值。但是,我仍然不知道爲什麼。 –