Ceci est une ancienne révision du document !
Manipulation du système de fichiers avec Python
Manipulation sur les chemins
Concaténer des chemins
import os save_folder_repo = os.path.join(save_folder, name)
Obtenir le chemin du dossier d'un fichier
import os filepath = "/a/b/c.txt" os.path.firname(filepath) # "/a/b"
Obtenir le dossier courant
Le dossier d’exécution du script:
import os os.getcwd()
Obtenir le chemin absolu
import os os.path.abspath("mydir/myfile.txt")
Le dossier du script qui s'exécute:
import os os.path.dirname(os.path.abspath(__file__))
Vérifier si un dossier ou fichier existe
import os os.path.isdir(save_folder_repo) # ou os.path.exists(folder) # ou pour les fichiers : os.path.isfile(filename)
Créer un dossier
import os os.makedirs(folder)
Lister les fichiers d'un dossier
import os mypath = "chemin/vers/dossier" onlyfiles = [os.path.join(mypath, f) for f in os.listdir(mypath) if os.path.isfile(os.path.join(mypath, f))]
Récursivement dans les sous-dossiers
https://docs.python.org/fr/3.6/library/glob.html
import glob print(glob.glob('**/*', recursive=True))
Copier un dossier et son contenu
import shutil shutil.copytree(src, dest)
Supprimer un dossier et son contenu
import shutil shutil.rmtree(path)
Supprimer un fichier
import os os.remove(filepath)
Enlever l'extension d'un nom de fichier
import os print(os.path.splitext("/path/to/some/file.txt")[0])