用Python複製檔案的九種方法

2021-09-25 04:47:03 字數 2680 閱讀 7093

以下是演示「如何在python中複製檔案」九種方法

shutil copyfile()方法shutil copy()方法shutil copyfileobj()方法shutil copy2()方法os popen方法os系統()方法thread()方法子程序呼叫()方法子程序check_output()方法

該方法只有在目標可寫時才將源的內容複製到目的地。如果您沒有寫入許可權,則會引發ioerror

它通過開啟輸入檔案進行閱讀,忽略其檔案型別。接下來,它不會對特殊檔案進行任何不同的處理,也不會將它們複製為新的特殊檔案。

所述的copyfile()方法利用較低階別的功能的copyfileobj()的下方。它將檔名稱作為引數,開啟它們並將檔案控制代碼傳遞給copyfileobj()。該方法中有乙個可選的第三個引數,您可以使用它來指定緩衝區長度。然後它將開啟檔案以讀取指定緩衝區大小的塊。但是,預設行為是一次性讀取整個檔案。

以下是有關copyfile()方法的要點。

copy()方法的功能類似於「cp」在unix命令。這意味著如果目標是乙個資料夾,那麼它將在其中建立乙個與原始檔相同的名稱(basename)的新檔案。此外,該方法將複製其內容後將目標檔案的許可權與源進行同步。 如果要複製相同的檔案,它也會丟擲samefileerror

此方法將檔案複製到目標路徑或檔案物件。如果目標是檔案物件,則需要在呼叫copyfileobj()之後明確關閉它。它假設乙個可選引數(緩衝區大小),您可以使用它來提供緩衝區長度。這是在複製過程中儲存在記憶體中的位元組數。系統使用的預設大小為16kb。

但是,copy2()方法的功能類似於copy()。但是,在複製資料的同時,也可以在元資料中新增訪問和修改時間。複製同乙個檔案會導致samefileerror

對於好奇 – copymode()與copystat()之間的區別。

該方法建立乙個指向或來自該命令的管道。它返回乙個連線到管道的開啟的檔案物件。您可以根據檔案開啟模式(即』r』(預設)或』w』)使用它進行讀取或寫入。

對於windows作業系統。

對於linux作業系統。

它是執行任何系統命令的最常見方式。使用system()方法,可以在subshell中呼叫任何命令。在內部,這種方法會呼叫標準的c庫函式。

此方法返回命令的退出狀態。

對於windows作業系統。

對於linux作業系統。

如果要以非同步方式複製檔案,請使用以下方法。在這裡,我們使用python的執行緒模組在後台執行複製操作。

使用此方法時,請確保採用鎖定以避免死鎖。如果您的應用程式正在使用多個執行緒讀取/寫入檔案,您可能會面對它。

子程序模組提供了乙個簡單的介面來處理子程序。它使我們能夠啟動子程序,附加到其輸入/輸出/錯誤管道,並檢索返回值。

子流程模組旨在替代傳統模組和功能,如* os.system,os.spawn ,os.popen ,popen2。

。它公開乙個call()方法來呼叫系統命令來執行使用者任務。

使用子程序check_output()方法,可以執行外部命令或程式並捕獲其輸出。它還支援管道。

教你用Python讀取CSV檔案的5種方式

目錄 在python裡面,讀取或寫入csv檔案時,首先要import csv這個庫,然後利用這個庫提供的方法進行對檔案的讀寫。典型的資料集stocks.csv 一 票的資料集,其實就是常見的 資料。有 日期,時間,變動和成交量。這個資料集其實就是乙個 資料,有自己的頭部和身體。我們先來看一種簡單讀取...

Python複製檔案的9種方法

以下是演示 如何在python中複製檔案 的九種方法。1.shutil copyfile 方法 2.shutil copy 方法 3.shutil copyfileobj 方法 4.shutil copy2 方法 5.os popen方法 6.os系統 方法 7.thread 方法 8.子程序呼叫 ...

python檔案複製 python檔案的複製

python複製文字的兩種方法 usr bin env python coding utf 8 import os 方法一,讀寫檔案進行複製 1 建立檔案test1.txt f1 open test1.txt w f1.writelines hello n world n welcome to py...