python shutil模塊

一、複製文件和文件夾

調用 shutil.copy(source, destination),將路徑 source 處的文件複製到路徑 destination處的文件夾( source 和 destination 都是字符串)。若是 destination 是一個文件名,它將做爲被複制文件的新名字。該函數返回一個字符串,表示被複制文件的路徑。python

import shutil, os
os.chdir('C:\\')
shutil.copy('C:\\spam.txt', 'C:\\delicious')
#'C:\\delicious\\spam.txt'
shutil.copy('eggs.txt', 'C:\\delicious\\eggs2.txt')
#'C:\\delicious\\eggs2.txt

shutil.copy()將複製一個文件, shutil.copytree()將複製整個文件夾,以及它包含的文件夾和文件。調用 shutil.copytree(source, destination),將路徑 source 處的文件夾,包括它的全部文件和子文件夾,複製到路徑 destination 處的文件夾。 source 和destination 參數都是字符串。該函數返回一個字符串,是新複製的文件夾的路徑。安全

import shutil, os
os.chdir('C:\\')
shutil.copytree('C:\\bacon', 'C:\\bacon_backup')
#'C:\\bacon_backup'

二、文件和文件夾的移動和更名

調用 shutil.move(source, destination), 將路徑 source 處的文件夾移動到路徑destination,並返回新位置的絕對路徑的字符串。能夠實現文件和文件夾的更名,移動時目標文件夾必須存在,不然拋出FileNotFoundError異常。函數

import shutil

shutil.move('C:\\bacon.txt', 'C:\\eggs\\new_bacon.txt')
#'C:\\eggs\\new_bacon.txt'

三、永久刪除文件和文件夾,不可恢復

  • 用 os.unlink(path)將刪除 path 處的文件。
  • 調用 os.rmdir(path)將刪除 path 處的文件夾。該文件夾必須爲空,其中沒有任何文件和文件夾。
  • 調用 shutil.rmtree(path)將刪除 path 處的文件夾,它包含的全部文件和文件夾都會被刪除。

 該操做永久刪除不可恢復,如需安全刪除,可安裝第三方模塊send2trash,使用send2trash.send2trash()函數進行刪除,被刪除文件將在回收站或垃圾箱。spa

相關文章
相關標籤/搜索