Python: IO編程
在計算機中,IO是指輸入和輸出,也就是數據的讀取和寫入。這里主要針對內存進行操作。 輸入:將數據從外部設備(如磁盤、網絡等)寫入到內存中。 輸出:將數據從內存中讀取出來,由CPU調用執行。 程序
在計算機中,IO是指輸入和輸出,也就是數據的讀取和寫入。這里主要針對內存進行操作。
輸入:將數據從外部設備(如磁盤、網絡等)寫入到內存中。
輸出:將數據從內存中讀取出來,由CPU調用執行。
程序代碼和運行時數據都是存儲在內存中的,當涉及到數據交換的地方,通常需要使用IO接口。
讀文件
讀取文件是通過請求操作系統打開一個文件對象(通常稱為文件描述符),然后通過操作系統提供的接口從這個文件對象中讀取數據。
以下是三種讀取文件的方法:
def read_1():
file_handle open("c:/test.txt", 'r')
file_()
file_()
# 文件使用完畢后必須關閉,因為文件對象會占用操作系統的資源,
# 并且操作系統同一時間能打開的文件數量也是有限的
def read_2():
try:
file_handle open("c:/test.txt", 'r')
finally:
file_()
# 保證文件句柄能一定得到關閉
def read_3():
# read_2方法的簡化寫法,會自動調用close方法
with open("c:/test.txt", 'r') as file_handle:
file_()
read():會一次性讀取文件的全部內容。如果文件非常大,內存可能會不夠用。為了安全起見,可以反復調用read(size)方法,每次最多讀取size個字節的內容。如果文件較小,read()是最方便的方法。另外還有:
readline():每次讀取一行內容。
readlines():一次讀取所有內容并按行返回一個列表。
對于配置文件,調用readlines()是最方便的。
寫文件
與讀文件類似,打開文件后,通過file_handle.write("Hello, world!")就可以將內容寫入文件中。在寫文件時,操作系統通常會先將數據放入內存緩存中,再在空閑時慢慢寫入磁盤。只有調用close()方法時,操作系統才保證將未寫入的數據全部寫入磁盤。如果忘記調用close(),可能導致部分數據寫入磁盤,剩余數據丟失。
因此,在進行文件寫入操作后一定要記得調用close()方法,以確保數據完整保存。
以上是關于Python IO編程的相關介紹和示例代碼。