日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python之shutil模块

發(fā)布時間:2023/12/20 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python之shutil模块 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、shutil模塊介紹

  shutil(或稱為 shell 工具)模塊中包含一些函數(shù),讓你在 Python 程序中復(fù)制、移動、改名和刪除文件。要使用 shutil 的函數(shù),首先需要 import shutil。

2、方法

2.1、復(fù)制文件和文件夾

2.1.1、shutil.copy(source, destination)   

  將路徑 source 處的文件復(fù)制到路徑 destination處的文件夾(source 和 destination 都是字符串)。如果 destination 是一個文件名,它將作為被復(fù)制文件的新名字。該函數(shù)返回一個字符串,表示被復(fù)制文件的路徑。

import shutil shutil.copy("F:\\share\\python\\style.css", "F:\\share")

  輸出結(jié)果:

'F:\\share\\style.css'

?

import shutil shutil.copy("data.sql", "F:\\share")

  輸出結(jié)果:

'F:\\share\\data.sql'

?

2.1.2、shutil.copytree(source, destination)

  將路徑 source 處的文件夾,包括它的所有文件和子文件夾,復(fù)制到路徑 destination 處的文件夾。 source 和destination 參數(shù)都是字符串。該函數(shù)返回一個字符串,是新復(fù)制的文件夾的路徑。

import shutil shutil.copytree("tornado", "F:\\share\\test")

  輸出結(jié)果:

'F:\\share\\test'?

?

2.2、文件和文件夾的移動與改名?

2.2.1、shutil.move(source, destination)

  將路徑 source 處的文件夾移動到路徑destination,并返回新位置的絕對路徑的字符串。

import shutil shutil.move("F:\\share\\python\\func.txt", "F:\\share\\test")

  輸出結(jié)果:

'F:\\share\\test\\func.txt'

?

2.3、永久刪除文件和文件夾

  利用 os 模塊中的函數(shù),可以刪除一個文件或一個空文件夾。但利用 shutil 模塊,可以刪除一個文件夾及其所有的內(nèi)容。

2.3.1、os.unlink(path)

  刪除 path 處的文件。

import osfor filename in os.listdir("F:\\share\\python"):if filename.endswith(".txt"):print(filename)os.unlink(filename)

  輸出結(jié)果:

new.txt

?

2.3.2、os.rmdir(path)

  刪除 path 處的文件夾。該文件夾必須為空,其中沒有任何文件和文件夾。

import os os.rmdir("F:\\share\\test")

  輸出結(jié)果:

--------------------------------------------------------------------------- OSError Traceback (most recent call last) <ipython-input-16-8c8f7b0cf6ca> in <module>()1 import os ----> 2 os.rmdir("F:\\share\\test")OSError: [WinError 145] 目錄不是空的。: 'F:\\share\\test'

?

import os path = "F:\\share\\test\\hello" print(os.path.exists(path)) os.rmdir(path) print(os.path.exists(path))

  輸出結(jié)果:

True False

?

2.3.3、shutil.rmtree(path)

  刪除 path 處的文件夾,它包含的所有文件和文件夾都會被刪除。

import shutil path = "F:\\share\\test\\imges" print(os.path.exists(path)) shutil.rmtree(path) print(os.path.exists(path))

  輸出結(jié)果:

True False

?

2.4、用 send2trash 模塊安全地刪除   

  因為 Python 內(nèi)建的 shutil.rmtree()函數(shù)不可恢復(fù)地刪除文件和文件夾,所以 用起來可能有危險。刪除文件和文件夾的更好方法,是使用第三方的 send2trash 模塊。你可以在終端窗口中運行 pip install send2trash,安裝該模塊(參見附錄 A,其中更詳細地解釋了如何安裝第三方模塊)。

  利用 send2trash,比 Python 常規(guī)的刪除函數(shù)要安全得多,因為它會將文件夾和文件發(fā)送到計算機的垃圾箱或回收站,而不是永久刪除它們。如果因程序缺陷而用send2trash 刪除了某些你不想刪除的東西,稍后可以從垃圾箱恢復(fù)。

import send2trash path = "F:\\share\\test\\templates" print(os.path.exists(path)) send2trash.send2trash(path) print(os.path.exists(path))

  輸出結(jié)果:

True False

  查看垃圾箱:

?

轉(zhuǎn)載于:https://www.cnblogs.com/bad-robot/p/9734273.html

總結(jié)

以上是生活随笔為你收集整理的python之shutil模块的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。