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 :

Problème d'incompatibilité ? [Python 3.X]


Sujet :

Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2021
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2021
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Problème d'incompatibilité ?
    Bonjour, mon code fonctionne sur Thonny mais pas sur l'invité de commande windows.
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    import random
     
    def sapin(n):
        print ((2*n - 2)*" " + "*")
        print ((2*n - 2)*" " + "^")
     
        for k in range(1, n):
            leaf_1 = ("'" + '"')*(k - 1)
            leaf_2 = ('"' + "'")*(k - 1)
            christmas = ""
            finish_2 = str(random.choices(['"', "o"], weights = (5, 1)))
            finish_1 = str(random.choices(["'", "o"], weights = (5, 1)))
     
            if k%2 == 0:
                for x in leaf_2:
                    if x == '"':
                        christmas += str(random.choices(['"', "o"], weights = (5, 1)))
                    else:
                        christmas += str(random.choices(["'", "o"], weights = (5, 1)))
     
                print (((2*n - 2) - k)*" " + "/" + christmas[2:len(christmas):5] + finish_2[2] + "\\")      
     
            else:
                for y in leaf_1:
                    if y == '"':
                        christmas += str(random.choices(['"', "o"], weights = (5, 1)))
                    else:
                        christmas += str(random.choices(["'", "o"], weights = (5, 1)))
     
     
     
                print (((2*n - 2) - k)*" " + "/" + christmas[2:len(christmas):5] + finish_1[2] +"\\")
     
     
     
        for p in range(3):    
            print ((2*n - 3)*" " + "|||")
     
    sapin(20)
    Si vous pouviez m'aider, ça m'aiderait énormément.
    Merci d'avance.
    Images attachées Images attachées  

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 721
    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 721
    Points : 31 044
    Points
    31 044
    Billets dans le blog
    1
    Par défaut
    Bonjour

    La dernière ligne (celle où tu appelles sapin(20)) montre le prompt secondaire "...", prompt qui apparait dans un code multi-lignes. Mais quand la partie "multilignes" se termine, le prompt qui doit apparaitre sur la ligne suivante (celle qui commence une nouvelle partie) est le prompt de base ">>>".
    Exemple
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> if True:
    ...    pass
    ...    pass
    ...    pass
    ...
    >>>
    C'est un signe que le code qui précède (qui est censé être terminé) est mal compris ou mal fermé (exmple il manque une quote, une parenthèse, etc). Sinon le prompt serait le prompt de base ">>>". Faudrait voir comment tu l'appelles dans Windows (ce qui expliquerait aussi pourquoi Windows présente ce script comme s'il était tapé en mode "idle").

    PS: si ce code est destiné à répondre au TP dont tu nous as parlé ici, il y a toujours ce défaut de calcul dont j'ai parlé à propos des branches qui commencent tantôt par une quote double et tantôt par une quote simple.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 354
    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 354
    Points : 36 882
    Points
    36 882
    Par défaut
    Salut,

    Citation Envoyé par Bullit00 Voir le message
    mon code fonctionne sur Thonny mais pas sur l'invité de commande windows.
    Ce qui ne fonctionne pas ici, c'est le copie-coller du code depuis votre éditeur de texte dans la console de l'interpréteur Python (signalée par les '>>>'): il faut plus de lignes vides pour terminer le bloc de la fonction et accepter l'instruction suivante.

    Normalement, vous devez sauvegarder votre code dans un fichier machin.py (un script Python) et le lancer "normalement" avec la commande qui lance l'interpréteur python depuis un terminal.

    - W

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 721
    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 721
    Points : 31 044
    Points
    31 044
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    c'est le copie-coller du code depuis votre éditeur de texte dans la console de l'interpréteur Python
    Ah oui, j'avais pas pensé qu'il faisait comme cela...

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2021
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2021
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup, effectivement je faisais du copier/coller, mais ça marche en appelant directement le programme depuis son emplacement.

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

Discussions similaires

  1. problème d'incompatibilité pilotes avec vista
    Par tomguiss dans le forum Windows Vista
    Réponses: 3
    Dernier message: 10/01/2009, 11h36
  2. Problème d'Incompatibilité de type
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 05/01/2009, 15h18
  3. Problème d'incompatibilité entre 2 fonction
    Par bog333 dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 03/10/2008, 19h47
  4. problème d'incompatibilité avec IE6
    Par wind_vinch dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 11/10/2007, 13h19
  5. problème d'incompatibilité apparement
    Par stephane eyskens dans le forum Flash
    Réponses: 8
    Dernier message: 17/09/2003, 14h51

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