原理:
print() 函數會把內容放到內存中, 內存中的內容並不一定能夠及時刷新顯示到屏幕中(應該是要滿足某個條件,這個條件現在還不清楚)。 使用flush=True之后,會在print結束之后,不管你有沒有達到條件,立即將內存中的東西顯示到屏幕上,清空緩存。
使用場景:
1.尤其是在while循環中,要想每進行一次while循環體,在屏幕上更新打印的內容就得使用flush = True的參數。
- 打開一個文件, 向其寫入字符串, 在關閉文件f.close()之前, 打開文件是看不到寫入的字符的。 要想在關閉之前實時的看到寫入的字符串,應該用flush = True.
f = open("input.txt", "w")
f.write("aaaaaa")
f.flush() #強行把緩沖區中的內容放到磁盤中
s = input("請輸入回車鍵")
f.close()
當沒有輸入回車鍵時,數據也依然寫入到文件中,如果沒有flush()方法的話,那么只有按下回車鍵才會把數據保存到文件中
輸出結果:
tarena@tedu:~/zengsf$ python3 exercise822.py
請輸入回車鍵