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 :

aide classes d�butant


Sujet :

Python

  1. #1
    Membre averti
    Homme Profil pro
    Lyc�en
    Inscrit en
    Novembre 2018
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 24
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Lyc�en

    Informations forums :
    Inscription : Novembre 2018
    Messages : 12
    Par d�faut aide classes d�butant
    Bonsoir, je suis d�butant en python, et j'essaye de faire les exercices de Apprendre � programmer en Python 3 de Gerard Swinnen, j'essaye de faire lexo 12.7 sur les classes mais il y a une erreur lorsque j'essaye d'afficehr toutes les cartes :
    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
    from random import randrange
    class Jeu(object):
        couleur = ('Pique', 'Trèfle', 'Carreau', 'Cœur')
        valeur = (2, 3, 4, 5, 6, 7, 8, 9, 10, 'valet', 'dame', 'roi', 'as')
        c = ("",'')
        def __init__(self):
            self.cartes = list()
            for i in range(4):
                for j in range(13):
                    self.cartes.append((j,i))
        def nom_carte(self, c):
     
            a = int(c[0])
     
            b = int(c[1])
            d = self.valeur[a]
            e = self.valeur[b]
            return (d,"de",e)
        def melange(self):
            t = len(self.cartes)
            for i in range(t):
                c1, c2 = randrange(t), randrange(t)
                self.cartes[c1], self.cartes[c2] = self.cartes[c2], self.cartes[c1]
     
        def tirer(self):
            if len(self.cartes) > 0:
                carte = self.cartes[0]
                del(self.cartes[0])
                return carte
            else:
                return None
    merci d'avance

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

    Citation Envoy� par alex74424 Voir le message
    mais il y a une erreur lorsque j'essaye d'afficehr toutes les cartes
    O� est le code qui "essaie d'afficher"?
    Quel est le message d'erreur?

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

  3. #3
    Membre averti
    Homme Profil pro
    Lyc�en
    Inscrit en
    Novembre 2018
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 24
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Lyc�en

    Informations forums :
    Inscription : Novembre 2018
    Messages : 12
    Par d�faut
    Citation Envoy� par wiztricks Voir le message
    Salut,



    O� est le code qui "essaie d'afficher"?
    Quel est le message d'erreur?

    - W
    oups desole, voici le code que j'essaie de lancer :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    a = Jeu()
    >>> a.melange()
    >>> for i in range(53):
    	c = a.tirer
    	if c == None:
    		print("terminé")
    	else:
    		print(a.nom_carte(c))
    et le message d'erreur :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
       a = int(c[0])
    TypeError: 'method' object is not subscriptable

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

    Le message d'erreur est pourtant clair non?
    La question � vous poser est "Pourquoi "c" contient une m�thode plut�t qu'une carte?".
    Donc vous remontez � la ligne suppos�e assigner une carte � la variable "c" et r�fl�chissez un peu pour comprendre pourquoi �� ne le fait pas.

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

  5. #5
    Membre averti
    Homme Profil pro
    Lyc�en
    Inscrit en
    Novembre 2018
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 24
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Lyc�en

    Informations forums :
    Inscription : Novembre 2018
    Messages : 12
    Par d�faut
    Citation Envoy� par wiztricks Voir le message
    Salut,

    Le message d'erreur est pourtant clair non?
    La question � vous poser est "Pourquoi "c" contient une m�thode plut�t qu'une carte?".
    Donc vous remontez � la ligne suppos�e assigner une carte � la variable "c" et r�fl�chissez un peu pour comprendre pourquoi �� ne le fait pas.

    - W
    merci beaucoup,j'ai trouv� mon erreur, j'ai oubli� les parenth�ses et dire que ca faisait une heure que je cherchais ahah � cause d'une bete erreur d'inattention

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    F�vrier 2006
    Messages
    12 849
    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 849
    Billets dans le blog
    1
    Par d�faut
    Bonjour
    Citation Envoy� par alex74424 Voir le message
    j'ai oubli� les parenth�ses et dire que ca faisait une heure que je cherchais ahah � cause d'une bete erreur d'inattention
    Et le souci, c'est que sans les parenth�ses la syntaxe c=a.tirer fonctionne tr�s bien (parce que le nom d'une fonction est un objet manipulable et stockable tout comme l'est une valeur num�rique). Mais ne fait pas ce qu'on voudrait (� savoir ex�cuter la foncton).
    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]

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Aide � un d�butant
    Par Invit� dans le forum Langage
    R�ponses: 7
    Dernier message: 07/07/2006, 09h47
  2. aide classe matrice
    Par ba10 dans le forum C++
    R�ponses: 8
    Dernier message: 17/05/2006, 08h10
  3. aide pour d�butant en reseaux
    Par Coolio dans le forum D�veloppement
    R�ponses: 1
    Dernier message: 18/12/2005, 00h40
  4. Aide pour d�butant : addition
    Par playentry dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 13/03/2005, 19h08

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