flush() 方法是用來把文件從內存buffer(緩沖區)中強制刷新到硬盤中,同時清空緩沖區和刷新緩沖區的,即將緩沖區中的數據立刻寫入文件,同時清空緩沖區,不需要是被動的等待輸出緩沖區寫入。
一般情況下,文件關閉后會自動刷新緩沖區,但有時你需要在關閉前刷新它,這時就可以使用 flush() 方法。
用讀寫流的時候,其實數據是先被讀到了內存中,然后用數據寫到文件中,當你數據讀完的時候不代表你的數據已經寫完了,因為還有一部分有可能會留在內存這個緩沖區中。如果此時調用了 close()方法關閉了讀寫流,那么這部分數據就會丟失,所以應該在關閉讀寫流之前先flush(),先清空數據。
這個方法的作用是把緩沖區的數據強行輸出。如果你不flush就可能會沒有真正輸出
#!/usr/bin/python3 # 打開文件 fo = open("runoob.txt", "wb") print ("文件名為: ", fo.name) # 刷新緩沖區 fo.flush() # 關閉文件 fo.close()