Comment obtenir le répertoire courant des fichiers de script en Python

Jinku Hu 30 janvier 2023
  1. Python récupère le répertoire de travail
  2. Python récupère le répertoire du fichier script
Comment obtenir le répertoire courant des fichiers de script en Python

Nous avons introduit l’opération de fichier et de répertoire dans Python 3 basic tutorial. Dans cette section, nous vous montrons comment obtenir le chemin relatif et absolu du script en cours d’exécution.

Python récupère le répertoire de travail

La fonction os.getcwd() retourne le répertoire de travail courant.

Si vous l’exécutez à l’invite de Python, le résultat est le chemin de Python IDLE.

Python récupère le répertoire du fichier script

Le chemin du fichier de script peut être trouvé dans le espace de noms global avec la variable globale spéciale __file__. Elle retourne le chemin relatif du fichier script par rapport au répertoire de travail.

Nous allons vous montrer dans les exemples de codes ci-dessous comment utiliser les fonctions que nous venons d’introduire.

import os

wd = os.getcwd()
print("working directory is ", wd)

filePath = __file__
print("This script file path is ", filePath)

absFilePath = os.path.abspath(__file__)
print("This script absolute path is ", absFilePath)

path, filename = os.path.split(absFilePath)
print("Script file path is {}, filename is {}".format(path, filename))
absFilePath = os.path.abspath(__file__)

os.path.abspath(__file__) retourne le chemin absolu du chemin relatif donné.

path, filename = os.path.split(absFilePath)

La fonction os.path.split() divise le nom de fichier avec le chemin vers le chemin pur et le nom de fichier pur.

Auteur: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook