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 :

chemin du fichier


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 177
    Par défaut chemin du fichier
    salut les amis.
    dans mon programme j'ai des chemins vers mes fichier que j'ai du mettre comme constante au début de mon programme vu que j'utilise beaucoup ces variable là.
    voici un exemple de mes constantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /home/stoner2008/workspace_eclipse/projet_final/mainpage/TestPage.py

    le problème ici que si je transporte mon travail sur un autre pc , vu que le nom d'utilisateur n'est pas <gras>stoner2008</gras>,le code ne va pas fonctionner.

    sachant que j'ai essayé ces trucs là et qui n'ont pas marché
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ~/workspace_eclipse/projet_final/mainpage/TestPage.py
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /workspace_eclipse/projet_final/mainpage/TestPage.py
    normalement ça doit etre quelques chose relative à os.path mais je sais pas trop comment faire.
    vous avez une idée comment procéder les amis?

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Ben oui, c'est bien os.path

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    >>> import os
    >>> user = os.path.expanduser("~")
    >>> user
    '/home/vincent'

  3. #3
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    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 830
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par stoner2008 Voir le message
    salut les amis.
    dans mon programme j'ai des chemins vers mes fichier que j'ai du mettre comme constante au début de mon programme vu que j'utilise beaucoup ces variable là.
    voici un exemple de mes constantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /home/stoner2008/workspace_eclipse/projet_final/mainpage/TestPage.py
    le problème ici que si je transporte mon travail sur un autre pc , vu que le nom d'utilisateur n'est pas <gras>stoner2008</gras>,le code ne va pas fonctionner.

    normalement ça doit etre quelques chose relative à os.path mais je sais pas trop comment faire.
    vous avez une idée comment procéder les amis?
    Salut

    Comme l'a dit VinsS, tu as expanduser() de os.path qui te donnera le home de ton user. Tu peux aussi utiliser sys.argv[0] qui te donnera le chemin complet de ton programme (plus exactement la chaine que tu mets pour le lancer => si tu tapes ./toto.py tu auras ./toto.py)
    En utilisant astucieusement ce chemin associé à dirname() tu auras le dossier de départ de ton programme qui peut aussi servir de base pour ton arborescence...

    Citation Envoyé par stoner2008 Voir le message
    sachant que j'ai essayé ces trucs là et qui n'ont pas marché
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ~/workspace_eclipse/projet_final/mainpage/TestPage.py
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /workspace_eclipse/projet_final/mainpage/TestPage.py
    Si tu avais revu les fondamentaux des noms de fichiers, tu n'aurais même pas essayé la seconde solution qui est un nom absolu donc qui part de la racine "/" de ton système.
    La première était effectivement jouable malheureusement le caractère ~ est un caractère bash et non Python...
    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]

  4. #4
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    dans mon programme j'ai des chemins vers mes fichier que j'ai du mettre comme constante au début de mon programme vu que j'utilise beaucoup ces variable là.
    voici un exemple de mes constantes:
    Variables et constantes diffèrent, dans ton cas on parlera de variable car tu dois pouvoir lire et modifier celle-ci.

    En python la notation n'est pas la même et le fonctionnement aussi, si tu veux analyser l'interprétation d'une constante en python je te conseille ce lien.

    le problème ici que si je transporte mon travail sur un autre pc , vu que le nom d'utilisateur n'est pas <gras>stoner2008</gras>,le code ne va pas fonctionner.
    os.environ est un dictionnaire prévue pour glaner des informations. Il suffit d'aller dans ton interpréteur est de faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> import os
    >>> os.environ
    >>> ...
    Pour avoir le nom utilisateur


  5. #5
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    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 830
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    os.environ est un dictionnaire prévue pour glaner des informations. Il suffit d'aller dans ton interpréteur est de faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> import os
    >>> os.environ
    >>> ...
    Pour avoir le nom utilisateur

    Salut

    Apparemment HOME n'est pas défini sous Windows. Il semblerait que sur cet os ce soit os.environ['USERPROFILE'].
    D'où un petit souci quand on va coder pour Linux/Windows. Dans ce cas là, faudra faire un truc ressemblant à ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    os.environ[
    	{
    		"posix" : "HOME",
    		"nt" : "USERPROFILE",
    	}[os.name]
    ]
    ...
    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]

  6. #6
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Ah oui possible, n'utilisant pas windows, je ne savais pas, bon à savoir

Discussions similaires

  1. récuperation de chemin de fichiers !!!
    Par massiliaman dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 31/07/2007, 18h17
  2. [MFC]Problème de chemin de fichier
    Par benahpets dans le forum MFC
    Réponses: 3
    Dernier message: 06/09/2005, 13h07
  3. Chemin du fichier css
    Par dreamanoir dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 07/07/2005, 16h49
  4. Réponses: 3
    Dernier message: 21/06/2005, 16h18
  5. [SAX] Chemin du fichier XML
    Par mikemikemike dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 25/11/2004, 15h04

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