Comment ouvrir des fichiers dans le même répertoire que votre script Python ?

Susan Sarandon
Libérer: 2024-11-18 12:19:02
original
431 Les gens l'ont consulté

How to Open Files in the Same Directory as Your Python Script?

Ouverture de fichiers dans le même répertoire que le script en cours d'exécution

Lorsque vous travaillez avec des scripts Python, l'ouverture fiable de fichiers dans le même répertoire que le script en cours d'exécution est crucial. Cependant, l'utilisation de commandes telles que open("Some file.txt", "r") peut rencontrer des problèmes si le script est exécuté par double-clic sous Windows.

Techniques problématiques et fiables

Les techniques qui peuvent échouer incluent :

  • os.getcwd() et os.path.abspath('') renvoient le répertoire de travail actuel, pas le répertoire de script.
  • os.path.dirname(sys.argv[0]) et os.path.dirname(__file__) peuvent renvoyer un chemin relatif ou vide, et __file__ n'est pas disponible dans certains environnements.

A La méthode fiable est :

__location__ = os.path.realpath(
    os.path.join(os.getcwd(), os.path.dirname(__file__)))
Copier après la connexion

Cela combine le répertoire de travail actuel avec le chemin dérivé de __file__. Si __file__ est absolu, le préfixe est supprimé. La gestion de Realpath garantit que tous les liens symboliques sont résolus.

Ouverture de fichiers

Pour ouvrir un fichier dans le même répertoire, utilisez la syntaxe suivante :

f = open(os.path.join(__location__, 'bundled-resource.jpg'))
Copier après la connexion

Cela garantit que le fichier se trouve dans le même répertoire que le script en cours d'exécution. La technique fonctionne de manière fiable dans les environnements Windows et Linux, gérant efficacement les scénarios de double-clic et de regroupement de ressources.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal