Wie kann man in Python auf die Klassenvariable zugreifen?

8

Die Codes sind wie folgt:

%Vor%

Wenn ich eine Instanz von Test erstelle, kann ich wie folgt auf die Instanzvariable b zugreifen (mit der Zeichenfolge "b"):

%Vor%

Aber es funktioniert nicht für a , da self.__dict__ keinen Schlüssel namens a enthält. Wie kann ich auf a zugreifen, wenn ich nur eine Zeichenkette a ?

habe?

Danke!

    
Hanfei Sun 09.11.2012, 06:19
quelle

4 Antworten

21
%Vor%

plus ein paar mehr Zeichen, damit ich es posten kann.

    
kindall 09.11.2012, 06:22
quelle
9

Verwenden Sie getattr , um das zu tun, was Sie wollen:

> %Vor%     
Artsiom Rudzenka 09.11.2012 06:22
quelle
4

Versuchen Sie Folgendes:

%Vor%     
Mark 09.11.2012 06:31
quelle
1

Sie können verwenden:

getattr(Test, a_string, default_value)

mit einem dritten Argument, um default_value zurückzugeben, falls a_string nicht in Test class gefunden wurde.

    
Miquel Santasusana 19.02.2015 19:58
quelle

Tags und Links