欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

利用Python復制文件的9種方法總結

系統 1839 0

以下是演示**“如何在Python中復制文件”的九種方法**。

  1. shutil copyfile()方法
  2. shutil copy()方法
  3. shutil copyfileobj()方法
  4. shutil copy2()方法
  5. os popen方法
  6. os系統()方法
  7. Thread()方法
  8. 子進程調用()方法
  9. 子進程check_output()方法

利用Python復制文件的9種方法總結_第1張圖片

1. Shutil Copyfile()方法

該方法只有在目標可寫時才將源的內容復制到目的地。如果您沒有寫入權限,則會引發IOError。

它通過打開輸入文件進行閱讀,忽略其文件類型。接下來,它不會對特殊文件進行任何不同的處理,也不會將它們復制為新的特殊文件。

所述的CopyFile()方法利用較低級別的功能的copyfileobj()的下方。它將文件名稱作為參數,打開它們并將文件句柄傳遞給copyfileobj()。該方法中有一個可選的第三個參數,您可以使用它來指定緩沖區長度。然后它將打開文件以讀取指定緩沖區大小的塊。但是,默認行為是一次性讀取整個文件。

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

  • 它將源的內容復制到名為目標的文件。
  • 如果目的地不可寫,則復制操作將導致IOError異常。
  • 如果源文件和目標文件都相同,它將返回SameFileError。
  • 但是,如果目的地以不同的名稱預先存在,則副本將覆蓋其內容。
  • 如果目的地是目錄,則意味著此方法將不會復制到目錄,將會發生錯誤13。
  • 它不支持復制文件,如字符或塊設備和管道。

利用Python復制文件的9種方法總結_第2張圖片

2. Shutil Copy()方法


copy()方法的功能類似于“CP”在Unix命令。這意味著如果目標是一個文件夾,那么它將在其中創建一個與源文件相同的名稱(basename)的新文件。此外,該方法將復制其內容后將目標文件的權限與源進行同步。 如果要復制相同的文件,它也會拋出SameFileError。以下是演示**“如何在Python中復制文件”的九種方法**。如果你依然在編程的世界里迷茫,不知道自己的未來規劃可以加入我們的Python秋秋裙去784掉758文214字看看前輩們如何學習的!交流經驗!自己是一名高級python開發工程師,從基礎的python腳本到web開發、爬蟲、django、數據挖掘等,零基礎到項目實戰的資料都有整理。送給每一位python的小伙伴!分享一些學習的方法和需要注意的小細節

  1. shutil copyfile()方法
  2. shutil copy()方法
  3. shutil copyfileobj()方法
  4. shutil copy2()方法
  5. os popen方法
  6. os系統()方法
  7. Thread()方法
  8. 子進程調用()方法
  9. 子進程check_output()方法

利用Python復制文件的9種方法總結_第3張圖片

1. Shutil Copyfile()方法

該方法只有在目標可寫時才將源的內容復制到目的地。如果您沒有寫入權限,則會引發IOError。

它通過打開輸入文件進行閱讀,忽略其文件類型。接下來,它不會對特殊文件進行任何不同的處理,也不會將它們復制為新的特殊文件。

所述的CopyFile()方法利用較低級別的功能的copyfileobj()的下方。它將文件名稱作為參數,打開它們并將文件句柄傳遞給copyfileobj()。該方法中有一個可選的第三個參數,您可以使用它來指定緩沖區長度。然后它將打開文件以讀取指定緩沖區大小的塊。但是,默認行為是一次性讀取整個文件。

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

  • 它將源的內容復制到名為目標的文件。
  • 如果目的地不可寫,則復制操作將導致IOError異常。
  • 如果源文件和目標文件都相同,它將返回SameFileError。
  • 但是,如果目的地以不同的名稱預先存在,則副本將覆蓋其內容。
  • 如果目的地是目錄,則意味著此方法將不會復制到目錄,將會發生錯誤13。
  • 它不支持復制文件,如字符或塊設備和管道。

利用Python復制文件的9種方法總結_第4張圖片

2. Shutil Copy()方法


copy()方法的功能類似于“CP”在Unix命令。這意味著如果目標是一個文件夾,那么它將在其中創建一個與源文件相同的名稱(basename)的新文件。此外,該方法將復制其內容后將目標文件的權限與源進行同步。 如果要復制相同的文件,它也會拋出SameFileError。

利用Python復制文件的9種方法總結_第5張圖片

利用Python復制文件的9種方法總結_第6張圖片

3. Shutil Copyfileobj()方法

此方法將文件復制到目標路徑或文件對象。如果目標是文件對象,則需要在調用**copyfileobj()**之后明確關閉它。它假設一個可選參數(緩沖區大小),您可以使用它來提供緩沖區長度。這是在復制過程中保存在內存中的字節數。系統使用的默認大小為16KB。

利用Python復制文件的9種方法總結_第7張圖片

4. Shutil Copy2()方法

但是,copy2()方法的功能類似于copy()。但是,在復制數據的同時,也可以在元數據中添加訪問和修改時間。復制同一個文件會導致SameFileError。

利用Python復制文件的9種方法總結_第8張圖片

對于好奇 ?C Copymode()與Copystat()之間的區別。

利用Python復制文件的9種方法總結_第9張圖片

5. Os Popen()方法

該方法創建一個指向或來自該命令的管道。它返回一個連接到管道的打開的文件對象。您可以根據文件打開模式(即'r'(默認)或'w')使用它進行讀取或寫入。

**模式 ?C**它可以是'r'(默認)或'w'。
**bufsize ?C**如果其值為0,則不會發生緩沖。如果設置為1,則在訪問文件時將進行行緩沖。如果您提供的值大于1,則緩沖將以指定的緩沖區大小進行。但是,對于負值,系統將采用默認緩沖區大小。
對于Windows操作系統。

對于Linux操作系統。

6. Os System()方法

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

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

對于Windows操作系統。

對于Linux操作系統。

7.以Async方式使用線程庫的Python文件復制

如果要以異步方式復制文件,請使用以下方法。在這里,我們使用Python的線程模塊在后臺運行復制操作。

使用此方法時,請確保采用鎖定以避免死鎖。如果您的應用程序正在使用多個線程讀取/寫入文件,您可能會面對它。

利用Python復制文件的9種方法總結_第10張圖片

8.使用子進程的Call()方法在Python中復制一個文件
子進程模塊提供了一個簡單的界面來處理子進程。它使我們能夠啟動子進程,附加到其輸入/輸出/錯誤管道,并檢索返回值。

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

它公開一個**call()**方法來調用系統命令來執行用戶任務。

利用Python復制文件的9種方法總結_第11張圖片

9.使用子進程的Check_output()方法在Python中復制文件

使用子進程的**check_output()**方法,可以運行外部命令或程序并捕獲其輸出。它還支持管道。

利用Python復制文件的9種方法總結_第12張圖片

利用Python復制文件的9種方法總結_第13張圖片

利用Python復制文件的9種方法總結_第14張圖片

3. Shutil Copyfileobj()方法

此方法將文件復制到目標路徑或文件對象。如果目標是文件對象,則需要在調用**copyfileobj()**之后明確關閉它。它假設一個可選參數(緩沖區大小),您可以使用它來提供緩沖區長度。這是在復制過程中保存在內存中的字節數。系統使用的默認大小為16KB。

利用Python復制文件的9種方法總結_第15張圖片

4. Shutil Copy2()方法

但是,copy2()方法的功能類似于copy()。但是,在復制數據的同時,也可以在元數據中添加訪問和修改時間。復制同一個文件會導致SameFileError。

利用Python復制文件的9種方法總結_第16張圖片

對于好奇 ?C Copymode()與Copystat()之間的區別。

利用Python復制文件的9種方法總結_第17張圖片

5. Os Popen()方法

該方法創建一個指向或來自該命令的管道。它返回一個連接到管道的打開的文件對象。您可以根據文件打開模式(即'r'(默認)或'w')使用它進行讀取或寫入。

**模式 ?C**它可以是'r'(默認)或'w'。
**bufsize ?C**如果其值為0,則不會發生緩沖。如果設置為1,則在訪問文件時將進行行緩沖。如果您提供的值大于1,則緩沖將以指定的緩沖區大小進行。但是,對于負值,系統將采用默認緩沖區大小。
對于Windows操作系統。

對于Linux操作系統。

6. Os System()方法

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

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

對于Windows操作系統。

對于Linux操作系統。

7.以Async方式使用線程庫的Python文件復制

如果要以異步方式復制文件,請使用以下方法。在這里,我們使用Python的線程模塊在后臺運行復制操作。

使用此方法時,請確保采用鎖定以避免死鎖。如果您的應用程序正在使用多個線程讀取/寫入文件,您可能會面對它。

利用Python復制文件的9種方法總結_第18張圖片

8.使用子進程的Call()方法在Python中復制一個文件

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

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

它公開一個**call()**方法來調用系統命令來執行用戶任務。

利用Python復制文件的9種方法總結_第19張圖片

9.使用子進程的Check_output()方法在Python中復制文件

使用子進程的**check_output()**方法,可以運行外部命令或程序并捕獲其輸出。它還支持管道。

利用Python復制文件的9種方法總結_第20張圖片

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美色综合天天久久综合精品 | 美女福利视频国产免费观看 | 日韩精品视频在线播放 | 在线观看视频色 | 久久99精品视免费看 | 高清久久 | 国产精品亚洲片在线观看不卡 | 26uuu中文字幕| 天天干天天操天天爽 | 国产成人免费无庶挡视频 | 四虎影业| 色综合天天综合网看在线影院 | 欧美3级| 日本黄色网址视频 | 91精品电影| 国产精品人妻无码久久久郑州 | 欧美精品一区三区 | 日韩激情视频 | 欧美日韩中文字幕 | 国产精品毛片一区二区三区 | 美女久草 | 日日日日干 | 天天影院免费看电影 | 欧美精品一区二区三区在线播放 | 亚洲人成网站999久久久综合 | 黄网在线| 成人毛片在线观看 | 欧美精品在线免费观看 | 日本青草视频 | 国产高清在线精品一区二区三区 | 亚洲欧洲视频在线观看 | 亚洲国产七七久久桃花 | 久久久久久av | 欧美亚洲精品在线 | 欧美久久久| av在线一区二区三区 | 亚洲欧美成人综合在线 | 激情婷婷六月天 | 日日操天天操夜夜操 | 偷拍免费视频 | 国产精品九九久久一区hh |