Comment obtenir le chemin complet du répertoire du fichier actuel ?

Je veux obtenir le chemin du répertoire du fichier courant. J'ai essayé :

>>> os.path.abspath(__file__)
'C:\\python27\\test.py'

Mais comment puis-je récupérer le chemin du répertoire ?

Par exemple :

'C:\\python27\\'
Solution

Si vous voulez dire le répertoire du script en cours d'exécution :

import os
os.path.dirname(os.path.abspath(__file__))

Si vous voulez dire le répertoire de travail actuel :

import os
os.getcwd()

Notez qu'avant et après file il y a deux tirets bas, et non un seul.

Notez également que si vous exécutez de manière interactive ou si vous avez chargé du code à partir de quelque chose d'autre qu'un fichier (par exemple, une base de données ou une ressource en ligne), __file__ peut ne pas être défini puisqu'il n'y a pas de notion de "fichier courant". La réponse ci-dessus suppose le scénario le plus courant d'exécution d'un script python qui se trouve dans un fichier.

Commentaires (17)
import os
print os.path.dirname(__file__)
Commentaires (3)

Vous pouvez utiliser la bibliothèque os et os.path facilement comme suit

import os
os.chdir(os.path.dirname(os.getcwd()))

os.path.dirname renvoie le répertoire supérieur du répertoire courant. Il nous permet de passer à un niveau supérieur sans passer d'argument de fichier et sans connaître le chemin absolu.

Commentaires (1)