如何在Python中重新整理內部緩衝區?
內部緩衝區由你使用的執行時、庫和程式語言建立,其目的是透過避免每次寫入都進行系統呼叫來加快操作速度。相反,當寫入檔案物件時,你寫入其緩衝區,當緩衝區滿時,系統函式用於將資料寫入實際檔案。
語法
以下是flush()函式的語法:
File_name.flush()
它不接受任何引數。
此方法不返回任何內容;其返回型別為<class 'nonetype'="">。
示例-1
下面的程式中的flush()方法只是清除檔案的內部緩衝區;檔案的實際內容不受影響。因此,可以讀取和檢視檔案中的內容。
# Create a file file = open("flush.txt", "w") # Write the text in the file file.write("Tutorials Point") # Flush the internal buffer file.flush() # Close the file file.close() # Read and write the content present in the file file = open("flush.txt", "r+") print("The content in the file is file.flush()") print(file.read()) file.close()
輸出
以下是上述程式碼的輸出:
The content in the file is file.flush() Tutorials Point
示例-2
在下面的程式中,我們建立了一個文字檔案,在其中寫入一些內容,然後關閉檔案。在讀取和顯示檔案內容之後,執行flush()函式,清除檔案的輸入緩衝區,以便檔案物件不讀取任何內容,並且檔案內容變數保持為空。因此,在flush()過程之後不會顯示任何內容。
# Create a file file = open("flush.txt", "w+") # Write in the file file.write("Tutorials Point file.flush() is performed. The content isn't flushed") # Close the file file.close() # Open the file to read the content present in it file = open("flush.txt", "r") # Read the content present in the before flush() is performed Content = file.read() # dDisplay the contents print("\nBefore performing flush():\n", Content) # Clear the input buffer file.flush() # Read the content after flush() function is performed but reads nothing since the internal buffer is already cleared Content = file.read() # Display the contents now print("\nAfter performing the flush():\n", Content) # Close the file file.close()
輸出
以下是上述程式碼的輸出:
Before performing flush(): Tutorials Point file.flush() is performed. The content isn't flushed After performing the flush():
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP