web-dev-qa-db-fra.com

Répertoire de travail actuel de PyCharm

Récemment, je n’ai pas pu utiliser de chemins relatifs dans mon code avec PyCharm. Par exemple, une simple open('test.txt', 'r') ne fonctionnera pas. Après quoi, je suis sûr que le fichier existe au même niveau que le fichier py en cours d'exécution. PyCharm renverra cette erreur. 

FileNotFoundError: [Errno 2] Aucun fichier ou répertoire de ce type:

Après avoir lu les réponses en ligne sur StackOverflow, j'ai essayé plusieurs options, notamment:

  • Remplacer test.txt par ./test.txt
  • Fermer le projet, supprimer le dossier .idea, ouvrir le dossier avec le code.
  • Réinstallation et installation de la dernière version de PyCharm.
  • Invalidation des caches et redémarrage.

Aucune de ces options n'a fonctionné pour moi. Puis-je dire à PyCharm d'actualiser le répertoire de travail actuel (ou même de voir où se trouve le répertoire de travail actuel)?

Merci d'avance!

Edit: Je dois noter que l’exécution du script dans une fenêtre de terminal fonctionnera. Cela semble être un problème avec PyCharm et non le script.

19
qwertyuip9

J'ai Pycharm 4.5, donc les choses ont peut-être un peu changé.

Essayez d'aller dans Paramètres> Projet> Structure du projet

Dans cette boîte de dialogue, cliquez sur votre dossier contenant le code source, puis sur le dossier bleu dans le menu pour le noter en tant que dossier "source". Je crois que cela résout beaucoup de problèmes de chemin dans Pycharm

Voici le lien vers "racines de contenu": https://www.jetbrains.com/pycharm/help/content-root.html

25
Dan

Modification: Exécuter> Modifier les configurations> Répertoire de travail, Qui définit le répertoire de travail d’un projet spécifique. (Ceci est sur un Mac)

31
andere

__file__ fait référence au chemin du fichier. Vous pouvez donc utiliser ce qui suit pour référencer un fichier dans le même répertoire:

import os

dirpath = os.path.dirname(__file__)
filepath = os.path.join(dirpath, 'test.txt')
open(filepath, 'r')
4
falsetru

Moi aussi, j'avais le même problème il y a quelques minutes ... mais avec la dernière version de PyCharm, le problème est résolu en utilisant simplement le chemin relatif de ce fichier ... 'r') fonctionnera.

0
user9203442

Parfois c'est différent. J'ai résolu mon problème en cliquant sur "Exécuter" dans la barre d'outils de Pycharm, puis sur "Modifier les configurations ..." et je change d'interprète en un autre. Le simple fait de le changer dans les paramètres n’aide pas, mais cette opération l’a déjà fait;)

0
Poland

Une petite clarification pour les utilisateurs de mac. Sous mac, ce que @andere a dit ci-dessus est correct pour définir un répertoire de travail. Toutefois, si votre code se trouve dans un autre dossier, dites working_dir/src/ (comme la structure de fichier Java/scala classique). Dans ce cas, vous devez toujours définir votre racine de sources. Dans PyCharm de mac, cela peut être fait en cliquant avec le bouton droit de la souris sur le dossier src/> Marquer le répertoire comme> Racine des sources. M'a aidé avec beaucoup de problèmes d'importation similaires. J'espère que ça aide quelqu'un.

0
mithunpaul

Dans PyCharm, cliquez sur "exécuter/modifier les configurations ..."

Trouvez ensuite votre fichier de script dans le menu déroulant "Python". Vérifiez l'entrée "Répertoire de travail" et modifiez-la si nécessaire.

0
BeneIT