Maison  >  Article  >  développement back-end  >  Comment obtenir le chemin du fichier actuel en python

Comment obtenir le chemin du fichier actuel en python

尚
original
2019-07-02 17:23:0113385parcourir

Comment obtenir le chemin du fichier actuel en python

Méthode Python pour obtenir le chemin actuel :

import os,sys

Utilisez sys.path[0], sys.argv[0] , os.getcwd(), os.path.abspath(__file__), os.path.realpath(__file__)

sys.path est une liste de chemins de recherche que Python recherchera pour les modules, sys.path[ 0] et sys.argv[0] est la même chose car Python ajoutera automatiquement sys.argv[0] à sys.path.

Si vous exécutez python getpathgetpath.py dans le répertoire C:test, alors os.getcwd() affichera "C:test" et sys.path[0] affichera "C:testgetpath".

Si vous utilisez le module py2exe pour compiler un script Python dans un fichier exécutable, la sortie de sys.path[0] changera également :
Si vous empaquetez la bibliothèque dépendante dans un fichier zip dans le par défaut, alors sys.path[0] affichera "C:testgetpathlibarary.zip" ;
Si le paramètre zipfile=None est spécifié dans setup.py, la bibliothèque dépendante sera empaquetée dans le fichier exe, alors sys. path[0] affichera « C:testgetpathgetpath.exe ».

#!/bin/env python
#-*- encoding=utf8 -*-

import os,sys

if __name__=="__main__":

    print "__file__=%s" % __file__

    print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__)

    print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__))
  
    print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0]  

    print "os.path.abspath(__file__)=%s" % os.path.abspath(__file__)

    print "os.getcwd()=%s" % os.getcwd()

    print "sys.path[0]=%s" % sys.path[0]

    print "sys.argv[0]=%s" % sys.argv[0]

输出结果:
D:\>python ./python_test/test_path.py
__file__=./python_test/test_path.py
os.path.realpath(__file__)=D:\python_test\test_path.py
os.path.dirname(os.path.realpath(__file__))=D:\python_test
os.path.split(os.path.realpath(__file__))=D:\python_test
os.path.abspath(__file__)=D:\python_test\test_path.py
os.getcwd()=D:\
sys.path[0]=D:\python_test
sys.argv[0]=./python_test/test_path.py

os.getcwd() "D:", le répertoire d'exécution de démarrage est pris
sys.path[0] ou sys.argv[0] "D:python_test", le répertoire d'exécution de démarrage est pris Le répertoire où se trouve le script initialement exécuté
os.path.split(os.path.realpath(__file__))[0] "D:python_test", le répertoire où se trouve le fichier test_path.py où se trouve __file__ pris

Obtenez correctement le chemin actuel :

    __file__是当前执行的文件
 
    # 获取当前文件__file__的路径
    print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__)
    # 获取当前文件__file__的所在目录
    print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__))       # 获取当前文件__file__的所在目录
    print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0] 

Pour plus d'articles techniques liés à Python, veuillez visiter la colonne Tutoriel Python pour apprendre !

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