Disons que j'ai les fichiers a.py et b.txt dans le même répertoire. Je ne peux pas m'assurer où ce répertoire est, mais je sais que b.txt sera dans le même répertoire que a.py. a.py doit accéder à b.txt, comment est-ce que je pourrais trouver le chemin vers b.txt? Quelque chose comme « ./b.txt » ne fonctionnera pas si l'utilisateur exécute le programme à partir d'un répertoire autre que celui-ci est enregistré dansPython, trouver un fichier dans le même répertoire
1
A
Répondre
4
Si vous voulez que la emplacement du script principal, même à partir du code qui peut s'exécuter dans un module importé, vous devez utiliser sys.argv[0]
plutôt que __file__
. (sys.argv[0]
est toujours le chemin du script principal, voir http://docs.python.org/library/sys.html#sys.argv)
Si vous voulez que l'emplacement du module en cours, même si elle a été importée par un autre script, vous devez utiliser __file__
comme le dit Martin.
est ici un moyen d'utiliser sys.argv[0]
:
import os, sys
dirname, filename = os.path.split(os.path.abspath(sys.argv[0]))
print os.path.join(dirname, "b.txt")
4
Utilisez la variable __file__
.
os.path.join(os.path.dirname(__file__), "b.txt")
Questions connexes
- 1. Trouver le fichier le plus ancien (récursivement) dans un répertoire
- 2. fichier et de répertoire avec le même nom dans le même répertoire parent - Solaris 8, UFS
- 3. Changer le répertoire dans le répertoire d'un script Python
- 4. Trouver des assemblées dans un répertoire
- 5. Comment trouver le répertoire personnel d'un utilisateur dans Perl?
- 6. Java - obtient le fichier le plus récent dans un répertoire?
- 7. Python: trouver un élément dans un tableau
- 8. Répertoire d'exécution de Python
- 9. Rechercher un fichier dans le répertoire avec plusieurs répertoires
- 10. .Dll Serveur Remoting dll dans le même répertoire que l'exécutable
- 11. PHP: Le fichier de classe dans le même répertoire n'est pas reconnu?
- 12. Trouver le type de fichier
- 13. modifiez le répertoire et exécutez le fichier de commandes dans la même invite de commande.
- 14. QFileDialog passant le répertoire au script python
- 15. Comment exécuter chaque script dans un répertoire sauf lui-même?
- 16. Trouver un fichier localisé
- 17. Fichier liste C# dans le répertoire
- 18. Comment enregistrer le fichier dans un répertoire local
- 19. Ouvrir le fichier dans un autre répertoire en C
- 20. CD vers répertoire, où le chemin est dans un fichier
- 21. Comment trouver \ n dans "" dans un fichier
- 22. Comment écrire regex pour trouver un répertoire dans une URL?
- 23. Fichier PHP non trouvé pour require_once, les autres sont dans le même répertoire
- 24. Un doublet bash pour passer dans le répertoire où se trouve un fichier
- 25. python sauvegarde unicode dans le fichier
- 26. Trouver tous les dossiers dans le répertoire racine
- 27. Le MiniMock de Python peut-il créer une simulation de fonctions définies dans le même fichier?
- 28. Référence non définie dans le même fichier
- 29. Comment importer un fichier Django settings.py Fichier Python d'un sous-répertoire?
- 30. Erreur TortoiseSvn: le même nom que le répertoire administratif