IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Ouvrir fichier dans dossier


Sujet :

Python

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    926
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 926
    Par défaut Ouvrir fichier dans dossier
    Bonjour,

    j'ai un fichier python qui s'exécute en utilisant un fichier .txt. Ces 2 fichiers sont placés dans une même dossier.

    > monDossier
    >> moncpyth.py
    >> myText.txt

    J'utilise dans le code python :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    with  open("myText.txt", 'rb') as f1
    Maintenant, je voudrai que mon fichier texte soit placé dans un sous-dossier :

    > monDossier
    >>> moncpyth.py
    >>> newFolder
    >>>>> myText.txt

    Je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
         with  open("newFolder/myText.txt", 'rb') as f1:
         with  open("/newFolder/myText.txt", 'rb') as f1:
         with  open("./newFolder/myText.txt", 'rb') as f1:
    rien ne marche.

    Auriez-vous la solution, svp? Je vous remercie d'avance.

    Cordialement,
    Arsène

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 715
    Par défaut
    Salut,

    Citation Envoyé par Arsene12 Voir le message
    Auriez-vous la solution, svp? Je vous remercie d'avance.
    La solution passe par la compréhension du problème et de ce qu'est un répertoire courant. C'est ce que raconte n'importe quel bon tuto. comme ce chapitre du Swinnen.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    926
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 926
    Par défaut
    Merci beaucoup pour le lien.

    J'ai essayé d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    chdir("E:\Python\NewFolder")
    J'obtiens cette réponse

    NameError: name 'chdir' is not defined

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 715
    Par défaut
    Citation Envoyé par Arsene12 Voir le message
    J'ai essayé d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    chdir("E:\Python\NewFolder")
    J'obtiens cette réponse

    NameError: name 'chdir' is not defined
    Eh bien, retournez voir dans le tuto. si çà ressemble aux exemples donnés.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    926
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 926
    Par défaut
    Je vous remercie. Vous m'avez apporté la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    from os import chdir
    chdir("/Programmation/Python/monDossier/newFolder")
     
    f6 = open("myText.txt", "r", encoding="utf-8-sig")
    monTexte= f6.read()
     
    chdir("/Programmation/Python/monDossier")
    with  open("maListe", 'rb') as f2:
    	Listo = pickle.load(f2)
    J'utilise également une liste. Il faut donc changer 2 fois de dossier dans mon code.

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 827
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Arsene12 Voir le message
    Je vous remercie. Vous m'avez apporté la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    from os import chdir
    chdir("/Programmation/Python/monDossier/newFolder")
     
    f6 = open("myText.txt", "r", encoding="utf-8-sig")
    monTexte= f6.read()
     
    chdir("/Programmation/Python/monDossier")
    with  open("maListe", 'rb') as f2:
    	Listo = pickle.load(f2)
    J'utilise également une liste. Il faut donc changer 2 fois de dossier dans mon code.
    Bonjour
    Il n'est (presque) jamais nécessaire de se placer dans un dossier "X" pour traiter le fichier "fic" qui s'y trouve. Quand on sait où se trouve ledit dossier (généralement une arborescence de type "drive:\arbo") on peut alors tout à fait taper directement dans "drive:\arbo\X\fic" (nom absolu)
    Et si on sait où on se trouve quand on lance le programme, et où se trouve le dossier "X" relativement "rel" à cette position où on se trouve, alors on peut aussi taper dans "rel\X\fic" (nom relatif).

    Ici, le code aurait pu s'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    f6 = open("/Programmation/Python/monDossier/newFolder/myText.txt", "r", encoding="utf-8-sig")
    monTexte= f6.read()
     
    with open("/Programmation/Python/monDossier/maListe", 'rb') as f2:
    	Listo = pickle.load(f2)
    De plus il existe la fonction os.path.join qui permet de créér un nom de chemin en utilisant la symbologie de l'os sur le quel on se trouve (des slashes "/" sous Unix/Linux et des backslashes "\" sous Windows).

    Donc le code peut alors devenir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    f6 = open(
    	os.path.join(
    		os.sep,
    		"Programmation",
    		"Python",
    		"monDossier",
    		"newFolder",
    		"mytext.txt",
    	),
    	"r",
    	encoding="utf-8-sig",
    )
    monTexte= f6.read()
     
    with open(
    	os.path.join(
    		os.sep,
    		"Programmation",
    		"Python",
    		"monDossier",
    		"maListe",
    	),
    	"rb",
    ) as f2:
    	Listo = pickle.load(f2)
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ouvrir fichier dans dossier parent
    Par Master_x_99 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/02/2016, 00h57
  2. Copier 1 fichier dans dossiers 1er niveau
    Par halphorg dans le forum Windows
    Réponses: 2
    Dernier message: 09/03/2008, 19h32
  3. Ouvrir fichier dans le code
    Par maxime115 dans le forum Général VBA
    Réponses: 2
    Dernier message: 22/08/2007, 17h07
  4. Droits d'acces aux fichiers dans dossier en partage
    Par catoucat dans le forum Windows XP
    Réponses: 3
    Dernier message: 03/07/2006, 02h47
  5. [VB.NET] Ouvrir fichier dans appli par double-clic dessus
    Par vynce dans le forum Windows Forms
    Réponses: 4
    Dernier message: 29/03/2005, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo