Maison  >  Article  >  développement back-end  >  Python implémente la suppression de fichiers et de dossiers sous un certain chemin

Python implémente la suppression de fichiers et de dossiers sous un certain chemin

不言
不言original
2018-04-24 13:43:375213parcourir

Ce qui suit est un exemple de la façon de supprimer des fichiers et des dossiers sous un certain chemin en Python. Il a une bonne valeur de référence et j'espère qu'il sera utile à tout le monde. Jetons un coup d'œil ensemble

Script Python pour supprimer des fichiers et des dossiers sous un certain chemin

#!/usr/bin/env python
import os
import shutil
delList = []
delDir = "/home/test"
delList = os.listdir(delDir )
for f in delList:
  filePath = os.path.join( delDir, f )
  if os.path.isfile(filePath):
    os.remove(filePath)
    print filePath + " was removed!"
  elif os.path.isdir(filePath):
  shutil.rmtree(filePath,True)
    print "Directory: " + filePath +" was removed!"

shutil est un module d'exploitation de fichiers de haut niveau. Le paramètre True indique ignore_errors (ignorer les erreurs lors de la copie).

est similaire à l'API de haut niveau, et sa principale force est qu'elle prend mieux en charge les opérations de copie et de suppression de fichiers.

[Pièce jointe] Utilisation du module os (bibliothèque)

Des fonctions telles que la recherche et la suppression de dossiers et de fichiers sont implémentées dans le module os.

1. Obtenez le répertoire actuel

#1.1
s = os.getcwd()
# s 中保存的是当前的执行目录(即执行所在的文件夹)

[Note]

Si vous souhaitez obtenir l'emplacement du répertoire actuel dans lequel le programme est exécuté, vous pouvez utiliser la fonction os.getcwd() du module os.

Si vous souhaitez obtenir l'emplacement du répertoire du script actuellement exécuté, vous devez utiliser la variable sys.path[0] ou sys.argv[0] du module sys pour obtenir

#1.2
import os
import time
folder = time.strftime(r"%Y-%m-%d_%H-%M-%S",time.localtime())
os.makedirs(r'%s/%s'%(os.getcwd(),folder))

2. Changer le répertoire actuel

os.chdir( "/root/123")
#将当前目录设为 "/root/123"
#说明: 当指定的目录不存在时,引发异常。

3. Décomposer un nom de chemin en deux parties : le nom du répertoire et le nom du fichier

fpath , fname = os.path.split( "你要分解的路径")

Par exemple :

a, b = os.path.split( "/root/123/test.txt" )
print a
print b

Affichage :

/root/123/
test.txt

Quatre , décomposez l'extension du nom de fichier

fpathandname , fext = os.path.splitext( "你要分解的路径")

Par exemple :

a, b = os.path.splitext( "/root/123/test.txt" )
print a
print b

Affichage :

/root/123/test
.txt

5. Déterminer si un chemin (répertoire ou fichier) existe

b = os.path.exists( "你要判断的路径")

Valeur de retour b : Vrai ou faux

6. Déterminer si un chemin est un fichier

b = os.path.isfile( "你要判断的路径")

Valeur de retour b : Vrai ou Faux

7. Déterminer si un chemin est un répertoire

b = os.path.isdir( "你要判断的路径")

Valeur de retour b : Vrai ou Faux

8. Obtenez une liste de fichiers et de sous-répertoires dans un répertoire

L = os.listdir( "你要判断的路径")

Par exemple :

L = os.listdir( "/root/123" )
print L

Affichage :

[‘test.txt', ‘test.py','python']
#这里面既有文件也有子目录

9. Créer des sous-répertoires

os.makedirs( path )  # path 是"要创建的子目录"

Par exemple :

os.makedirs("/root/123")

L'appel peut échouer . Les raisons possibles sont :

(1) Lorsque le chemin existe déjà (qu'il s'agisse d'un fichier ou d'un dossier)

(2) Le lecteur n'existe pas

(3) Le disque est plein

(4) Le disque est en lecture seule ou n'a pas d'autorisations en écriture

10. Supprimer les sous-répertoires . 🎜>

os.rmdir( chemin ) # chemin : "Sous-répertoire à supprimer"

Raisons possibles de l'exception :

(1) le chemin n'existe pas

(2) sous-répertoire du chemin Il y a des fichiers ou des sous-répertoires de niveau inférieur

(3) Aucune autorisation d'opération ou lecture seule

11. Supprimer des fichiers

os.remove(  filename )  # filename: "要删除的文件名"

Raisons possibles de l'exception :

(1) le nom de fichier n'existe pas

(2) Il n'y a aucune autorisation d'opération pour le fichier de nom de fichier ou en lecture seule.

12. Renommer le fichier

os.name( oldfileName, newFilename)

Produit une exception Raison :

(1) oldfilename L'ancien nom de fichier n'existe pas

(2) newFilename Lorsque le nouveau fichier existe déjà, à ce moment-là, vous devez d'abord supprimer le fichier newFilename.


Recommandations associées :

python supprime les fichiers avant l'intervalle de temps spécifié

Décompressez le fichier zip et supprimez le fichier sous python Exemple de _python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn