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

Tkinter Python Discussion :

Probleme cour python


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 59
    Par défaut Probleme cour python
    Bonjour je suis entrain de parcourir ce cours Python : tuto Swinnen sur python au chapitre 8 je teste les 2 premier programme et une fois enregistré, j'essaye de le demarrer sa ouvre une fenetre comme celle de la console pendant 1seconde puis sa se refermer sans lancer la fenetre avec l'interface graphique! quelqu'un pourai m'aider
    voici le code du programme que j'ai recopier
    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
    40
    41
    42
    from Tkinter import *
     
    def cerle(x, y, r, coul ='black'):
        "tracé d'un cercle (x,y) et de rayon r"
        can.create_oval(x-r, y-r, x+r, y+r, outline=coul)
     
    def figure_1():
        "dessiner une cible"
        can.delete(ALL)
        can.create_line(100, 0, 100, 200, fill ='blue')
        can.create_line(0, 100, 200, 100, fill ='blue')
        rayon = 15
        while rayon < 100:
            cerle(100, 100, rayon)
            rayon += 15
     
    def figure_2():
        "dessiner un visage simplifier"
        can.delete(ALL)
        cc =[[100, 100, 80, 'red'],
    	     [70, 70, 15, 'blue'],
    		 [130, 70, 15, 'blue'],
    		 [70, 70, 5, 'black'],
    		 [130, 70, 5, 'black'],
    		 [44, 115, 20, 'red'],
    		 [156, 115, 20, 'red'],
    		 [100, 95, 15, 'purple'],
    		 [100, 145, 30, 'purple']]
    	i =0
    	while i < len(cc):
    	    el = cc[i]
    	    cercle(el[0], el[1], el[2], el[3])
    	    i += 1
     
    fen = Tk()
    can = Canvas(fen, wigth =200, height =200, bg ='ivory')
    can.pack(side =TOP, padx =5, pady =5)
    b1 = Button(fen, text='dessin 1', command =figure_1)
    b1.pack(side =LEFT, padx =3, pady =3)
    b2 = Button(fen, text ='dessin 2', command =figure_2)
    b2.pack(side =RIGHT, padx =3, pady =3)
    fen.mainloop()

  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,

    - un problème d'indentation de:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	i =0
    	while i < len(cc):
    	    el = cc[i]
    	    cercle(el[0], el[1], el[2], el[3])
    	    i += 1
    - et "wigth" est inconnu: c'est width.

    En principe, ton outil de développement devrait te dire ça tout de suite.

    Tyrtamos

    [edit]: et bonjour voisin!

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 59
    Par défaut
    deja merci pour ta réponse j'ai corriger mais sa ne change rien, je developpe python avec phpdesigner 2007 ! par contre je comprend pas le probleme avec indentation kes ki n'est pa bon? la je vien de faire le code de la calculatrice et sa ne marche pa non plus je comprend rien a python
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    from Tkinter import *
    from math import *
     
    def evaluer(event):
        chaine.configure(text = "Résultat = " + str(eval(entree.get())))
     
    fenetre = Tk()
    entree = Entry(fenetre)
    entree.bind("<Return>", evaluer)
    chaine = Label(fenetre)
    entree.pack()
    chaine.pack()
     
    fenetre.mainloop()

  4. #4
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Citation Envoyé par mali_67 Voir le message
    deja merci pour ta réponse j'ai corriger mais sa ne change rien, je developpe python avec phpdesigner 2007
    Moi je connais pas phpdesigner, mais un conseil, télécharge la version 2.5.2 et utilse IDLE ou sinon tu peux aussi utiliser wing ware. C'est celui que j'utilise et franchement il est nickel.

    Citation Envoyé par mali_67 Voir le message
    la je vien de faire le code de la calculatrice et sa ne marche pa non plus
    Depuis la version 2.3 de python tu dois déclarer le type de codage (accent...). Dans ton cas c'est "Résultat" qui te gêne. Avant les imports tu dois mettre:
    Voir page 40 du tuto que tu as.

    Citation Envoyé par mali_67 Voir le message
    je comprend rien a python
    Moi je viens de VB. Je n'ai qu'un seul regret...
    ... Ne pas avoir connu Python plutôt.
    Persévère, et tu verras c'est vraiment le top et c'est super simple.

    Bon courage.
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  5. #5
    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
    Chaque langage a ses particularités. Chez Python, l'indentation remplace les "{" et "}" du C, tu peux donc imaginer à quel point c'est important: une erreur d'indentation change la logique du programme. Et quand l'indentation ne correspond à aucune logique, c'est une erreur (c'est ce qui t'arrive).

    En général, on prend 4 espaces pour un décalage, et il vaut mieux ne pas mélanger les espaces et les tabulations.

    Il faut utiliser un outil de développement qui te montre des erreurs par rapport aux règles Python, sinon tu vas perdre du temps. Essaye d'utiliser simplement "idle" qui est la console de développement livrée avec Python. C'est ce que j'ai utilisé pour savoir ce qui n'allait pas dans ton code, et j'ai trouvé en 15 secondes.

    Concernant le pb d'indentation signalé, voilà ton code corrigé:

    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
    def figure_2():
        "dessiner un visage simplifier"
        can.delete(ALL)
        cc =[[100, 100, 80, 'red'],
            [70, 70, 15, 'blue'],
            [130, 70, 15, 'blue'],
            [70, 70, 5, 'black'],
            [130, 70, 5, 'black'],
            [44, 115, 20, 'red'],
            [156, 115, 20, 'red'],
            [100, 95, 15, 'purple'],
            [100, 145, 30, 'purple']]
        i =0
        while i < len(cc):
            el = cc[i]
            cercle(el[0], el[1], el[2], el[3])
            i += 1
    J'ai non seulement réaligné le i= et le while sur cc=, mais j'ai remplacé les tabulations par des espaces (4 par indentation).

    Sur les outils de développement Python comme idle, il y a même des fonctions de conversion automatique des tabulations en espaces.

    Tyrtamos

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 59
    Par défaut
    sa va peutre vous paraitre debile mais je sais pas comment ouvrir le IDLE
    a chak fois je fait click droit sur un .py et je fait edit width IDLE mais sa ne permet pas de créer un prog vierge! Et j'ai ouvert mon prog avec IDLE(avec le clik droit) mais je ne vois pas les erreur je doit etre polio

  7. #7
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864

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

Discussions similaires

  1. probleme de Python debutant
    Par billates dans le forum Général Python
    Réponses: 7
    Dernier message: 01/05/2011, 23h31
  2. Recherche cours python !
    Par jujulips dans le forum Général Python
    Réponses: 2
    Dernier message: 13/03/2011, 12h19
  3. avis cours python classe de seconde
    Par dav74 dans le forum Général Python
    Réponses: 23
    Dernier message: 02/04/2009, 11h59

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