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 :

passer des variables à la ligne de commande depuis Python


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Pays-Bas

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 17
    Par défaut passer des variables à la ligne de commande depuis Python
    Bonjour!

    La question que je veux vous poser paraît peut-être un peu farfelue. Il me serait pourtant d'un grand avantage d'y avoir une réponse, cela pourrait m'aider à finir un des mes projets, je peux vous donner davantage de détails là-dessus si vous en avez besoin.

    On peut exécuter un script Python en ligne de commande avec des paramètres. Ceux-ci peuvent ensuite être récupérés grâce à sys.argv. Maintenant je me demande si on s'il y a moyen "d'envoyer" une variable obtenue grâce à un code Python vers cette même ligne de commande.
    Si ce n'est pas le cas, j'aimerais savoir pour quelle raison ça n'a pas été rendu possible.

    Pour fournir quand-même un peu de contexte, cette variable que je veux "envoyer" est le chemin d'un répertoire vers lequel je veux me déplacer dans l'invite de commande. Je n'ai pas pu trouver une fonctionnalité Python remplissant ce rôle. Voilà donc comment cette question plus générale m'est venue.

    Merci d'avoir lu ma question.

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Pour changer de répertoire courant sous Python, c'est "os.chdir(chemin)"

    Pour des cas plus compliqués, rien n'empêche sous Python de créer et d'enregistrer un script console (fichier bat sous Windows), et de le lancer avec n'importe quels paramètres.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Pays-Bas

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 17
    Par défaut
    Tout d'abord merci pour votre réponse tyrtamos !

    Citation Envoyé par tyrtamos Voir le message
    Bonjour,
    Pour changer de répertoire courant sous Python, c'est "os.chdir(chemin)"
    Je connais cette commande, mais elle n'atteint pas mon but: je veux changer de répertoire courant dans la ligne de commande que depuis laquelle j'exécute mon code Python, et ce n'est pas précisément ce que fait os.chdir.

    Pour des raisons similaires, votre deuxième idée ne semble pas non plus utilisable dans mon cas:

    Citation Envoyé par tyrtamos Voir le message
    Pour des cas plus compliqués, rien n'empêche sous Python de créer et d'enregistrer un script console (fichier bat sous Windows), et de le lancer avec n'importe quels paramètres.
    Est-ce que je vous ai bien compris ? Est-ce que vous me comprenez ?

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    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 738
    Par défaut
    Salut,

    Citation Envoyé par Bram van Dam Voir le message
    Est-ce que je vous ai bien compris ? Est-ce que vous me comprenez ?
    Ce que j'en comprends est que vous voulez récupérer la sortie d'un programme et la passer en paramètre d'un autre programme... Le langage dans lequel a été écrit les programmes n'a aucune importance: c'est juste du BAT sous Windows ou shell sous Linux... et à priori vous ne postez pas dans le bon forum.

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

  5. #5
    Membre chevronné
    Homme Profil pro
    BTS SN IR
    Inscrit en
    Mai 2017
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SN IR

    Informations forums :
    Inscription : Mai 2017
    Messages : 514
    Par défaut
    regarde du coté de subprocess.Popen() (ou psutil.Popen())

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Pays-Bas

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 17
    Par défaut
    Citation Envoyé par flapili Voir le message
    regarde du coté de subprocess.Popen() (ou psutil.Popen())
    Merci!

    Malheureusement je ne n'ai pas encore utilisé de tuyaux dans ma vie, donc il me faudra du temps pour savoir comment utiliser ces fonctions. Mais merci en tout cas.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/06/2010, 12h47
  2. Comment passer des arguments en ligne de commande?
    Par Razgriz dans le forum NetBeans
    Réponses: 1
    Dernier message: 11/04/2007, 11h11
  3. taille max des arguments en ligne de commande
    Par clepape dans le forum Langage
    Réponses: 2
    Dernier message: 08/10/2005, 13h18
  4. [C#][XSLT] Passer des variables
    Par Landolsi dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 30/09/2005, 14h26
  5. Réponses: 3
    Dernier message: 03/02/2005, 13h07

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