0
votes

Fichier de lecture .txt à partir du dossier dans un autre dossier donne une erreur

Bonjour les gars c'est mon arborescence de projet: xxx pré>

J'ai besoin de lire le texte du fichier nom.txt. p>

i Ajouter ce code dans Get. py code>: p> xxx pré>

ceci ne fonctionne pas, je vois ce message ERREUR: P>

Traceback (most recent call last):
  File "C:\Users\JOHN\Desktop\New folder\Resources\get.py", line 1, in <module>
    class path():
  File "C:\Users\JOHN\Desktop\New folder\Resources\get.py", line 3, in path
    with open('data/path/name.txt', 'r') as file:
FileNotFoundError: [Errno 2] No such file or directory: 'data/path/name.txt'


3 commentaires

Si vous ne passez pas une passe complète, il est supposé être relatif et dans votre répertoire actuel, il n'y a pas de dossier de données . Soit mettre le chemin complet, soit quelque chose comme: ../ Data / chemin / nom.txt


Le problème est que j'ai besoin de l'utiliser après convertir le script sur .exe par pyinstaller


Votre répertoire de travail actuel est ... \ dektop \ Nouveau dossier \ Ressources . Est-ce la sortie de Pyinstaller .exe?


3 Réponses :


1
votes

Si vous démarrez le fichier FilePath avec un nom, il continuera à partir du répertoire de travail (le répertoire du fichier Python si vous utilisez inactif).

Si vous souhaitez spécifier un chemin absolu sous Windows, ajoutez c: / au début, donc avec votre exemple: xxx


2 commentaires

Le problème est que j'ai besoin de l'utiliser après convertir le script sur .exe par pyinstaller


Il devrait toujours fonctionner tant que le fichier texte reste dans le même chemin. Si vous voulez le faire fonctionner, peu importe l'endroit où vous le déplacez, je vous recommande de mettre votre EXE et vos actifs dans un dossier, puis déplacez simplement le dossier. De là, vous pouvez utiliser ouvert ('actifs / nom.txt', 'r') et cela fonctionnerait peu importe où il est si long que le dossier et l'exe séjournent au même endroit.



0
votes

Essayez avec le chemin complet C: /data/path/name.txt ou relative ../ Data / chemin / nom.txt . .


2 commentaires

Le problème est que j'ai besoin de l'utiliser après convertir le script sur .exe par pyinstaller


Pouvez-vous recevoir le chemin du fichier comme un argument de votre script?



0
votes

Pour utiliser un chemin relatif (comme vous le faites maintenant), vous devez modifier votre chemin relatif afin qu'il commence un niveau supérieur. Essayez ceci:

Ouvrir ('../ DATA / PATH / NAME.TXT', 'R')


1 commentaires

Le problème est que j'ai besoin de l'utiliser après convertir le script sur .exe par pyinstaller