Bonjour,

Ce n'est pas la première fois que j'ai ce problème, et je n'ai pas trouvé de solution dans mes recherches...

Quand je souhaite récupérer le nom d'une classe, ou d'un objet, je récupère toutes les infos sur l'instance et non juste le nom que j'ai donné à la classe. Je suis sans doute pas clair, avec le code ça ira mieux

Voici une classe army avec une méthode permettant d'ajouter des troupes (exercice proposé sur checkio):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class Army:
 
    def __init__ (self):
        self.army = []
 
 
    def add_units(self, type, add):
        a = [type, add]
        self.army.append(a)
        print(self.army)
Là comment je l'utilise:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
army_3 = Army()
    army_3.add_units(Warrior, 20)
    army_3.add_units(Knight, 5)
(Warrior et Knight sont des classes)

Et ce que j'obtiens dans ma liste représentant l'armée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
[["<class '__main__.Warrior'>", 20], ["<class '__main__.Knight'>", 5]]
J'aimerai juste pouvoir récupérer le nom de l'unité (Warrior) et non tout ca : "<class '__main__.Warrior'>"

Merci à vous!