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 :

erreur de saisie


Sujet :

Python

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut erreur de saisie
    Bonjour,

    J'ai un script qui demande en début de programme à l'utilisateur de saisir le nom de la librairie et sa version, lorsque je le lance en interactif tout marche bien par contre en non interactif ça bloque, j'ai fait des tests et j'ai trouvé que ça bloqué au niveau de ma commande subprocess.Popen...quelqu'un serait pourquoi?

  2. #2
    Membre très actif
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Par défaut
    Salut,
    ça aiderait certainement d'avoir le code et le message d'erreur sous les yeux.
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    et bien je peux pas mettre le code entierement mais c a peu pres sa:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    def GetPackage(user, hostname):
    	while 1:
    		DP = raw_input("Insert design Package: ")
    		version = raw_input("Insert valid version: ")
     
    		proc = subprocess.Popen(["ssh", user+"@"+hostname,"blop"],stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
    		data = proc.communicate()
    		proc.wait()
     
    		if data[0] != "":
    			break
    		else:
    			print >> sys.stderr, "The DP or version is incorrect"
    			print >> sys.stderr, "Please! Try again \n"


    et quand je lance la fonction en invité de commande

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    et quand je lance cette function cela marche j'ai:

    >>test.py
    ......#ok sa marche bien

    >>test.py > test.hcn
    ......#non sa ne marche pas, rien ne se passe, sa bloque
    le test.hcn c'est le fichier ds lequel je doit générer du xml que la suite de mon code génère.....alors je sais pas si vous avez compris

  5. #5
    Membre très actif
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Par défaut
    J'aimerai savoir une chose, ligne :
    >>test.py > test.hcn
    Tu la lance où?
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    dans ma fenetre de commande...la fenetre interactif si tu prefere

  7. #7
    Membre très actif
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Par défaut
    Salut,
    alors si tu lances cela de l'invite de commande (comme il le faudrait), c'est que tu dois (si tu ne le fais pas déjà) récupérer le paramètre (sys.argv[1] qui est le fichier de sortie du xml si je ne me trompe)dans ton code pour y stocker ton xml et tu ne dois pas de servir du redirecteur de sortie ">". Ton appel devrait alors être de la forme:
    fichier.py fichier_de_sortie_point_extension
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  8. #8
    Membre Expert

    Homme Profil pro
    Diverses et multiples
    Inscrit en
    Mai 2008
    Messages
    662
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Diverses et multiples

    Informations forums :
    Inscription : Mai 2008
    Messages : 662
    Par défaut
    Oui, si tu fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fichier.py > fichier.xml
    … tu rediriges tout ce qu’affiche ton programme dans fichier.xml… Y compris tes différents print() et autres raw_input()*!

    En fait, ton programme ne bloques pas, simplement tu ne vois pas les invites “Insert design Package: ” et consorts, puisqu’elles sont redirigées dans le fichier…

    Donc, si tu veux afficher des infos dans la console, tu ne peux pas utiliser cette syntaxe (>), tu dois, comme le dit afranck64, spécifier le nom de ton fichier xml en paramètres, l’ouvrir en écriture dans ton programme, et y écrire ce que tu veux –*lis la doc python pour plus de détails.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    et donc le spécifier de la façon suivante alors:

    fichier.py xml.hcn??

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    Quand j'utilise l'instruction suivante d'apres aFrank64:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     fichier.py fichier_de_sortie_point_extension
    j'ai l'erreur suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     [ERROR] ./fichier.py doesn't take any argument

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    bon j'ai avancé et voila se que je fait:

    j'ai crée un fichier input dans lequel j'ai mis le nom de ma librairie et à la ligne la version:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    # input file
              DP_XXXXXX
              3.0
    puis ensuite dans mon fichier.py j'ajoute:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DP = raw_input()
              version = raw_input()
    et enfin je lance mon script de la facon suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fichier.py > xml.hcn < input
    sa marche bien mais pour le moment c'est moi qui à rentrer les paramètres par défault et je sais pas comment faire pour demander à l'utilisateur de les rentrer lui même.

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    j'ai essayé une autre méthode qui à l'air de marcher et j'aimerais avoir votre avis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    print >> sys.stderr, "Insert DP: "
    DP = raw_input()
    print >> sys.stderr, "Insert valid version: "
    version = raw_input()
    et ça m'affiche:

    Insert DP:
    >>faut taper à la ligne ( préférable de taper ds la même ligne mais je sais pas comment faire)

    Insert valid version:
    >> taper à la ligne

Discussions similaires

  1. DoCmd.GoToRecord et détection des erreurs de saisie
    Par aba_tarn dans le forum VBA Access
    Réponses: 12
    Dernier message: 26/07/2007, 08h44
  2. [VBA-E]Gèrer les erreurs de saisie de dates
    Par nicocomumu dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/05/2007, 16h08
  3. Formulaire | champ en surbrillance si erreur de saisie
    Par jiojioforever dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/11/2006, 09h59
  4. Réponses: 6
    Dernier message: 08/10/2006, 16h49
  5. Eviter les erreurs de saisie
    Par julo56 dans le forum C++
    Réponses: 5
    Dernier message: 06/06/2006, 00h04

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