1 pièce(s) jointe(s)
Problème création du méthode de classe
Bonjour,
J'essaie de créer une classe qui comporte une méthode de classe.
Voici le code de la création de la classe:
Code:
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
| class TableauNoir:
"""Classe définissant une surface sur laquelle on peut écrire,
que l'on peut lire et effacer, par jeu de méthodes. L'attribut modifié
est 'surface'"""
nb_TableauNoirs = 0
def __init__(self):
"""Par défaut, notre surface est vide"""
self.surface = ""
nb_TableauNoirs += 1
def ecrire(self, message_a_ecrire):
"""Méthode pour écrire sur le tableau"""
"""Si la surface n'est pas vierge, on saute une ligne"""
if self.surface != "":
self.surface += "\n"
self.surface = self.surface + message_a_ecrire
def lire(self):
"""Cette méthode se charge d'afficher, grâce à print,
la surface du tableau"""
print(self.surface)
def effacer(self):
"""Cette méthode permet d'effacer la surface du tableau"""
self.surface = ""
def combien(cls):
"""Méthode de classe affichant combien d'objets ont été créés"""
print("Jusqu'à présent, {} objets ont été créés.".format(cls.nb_TableauNoirs))
combien = classmethod(combien) |
Le problème est que je lorsque j'importe la classe dans une fenêtre de commande python, j'ai l'erreur suivante:
Code:
1 2 3 4 5 6 7 8
| Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "F:\Dropbox\python\Classes\mes_classes.py", line 54
print("Jusqu'à présent, {} objets ont été créés.".format(cls.nb_TableauNoirs
))
^
IndentationError: unindent does not match any outer indentation level |
Je ne comprends pas pourquoi il me sort une erreur d'indentation.
J'ai déja eu des problème avec l'indentation et j'ai remplacé les tabulations par des espaces dans Notepad++. Si il reste un problème de ce type je ne vois pas ou il est.
Allez-y doucement dans les explications, je débute en python :?
Je joins le fichier de création de la classe en pièce jointe.
Merci.