Bitte sehen Sie sich die folgende Ausführung des Python-Shell-Skripts in Sequenz an. Es wird die Lösung von der Klassenerstellung bis zur Extrahierung der Feldnamen von Instanzen geben.
>>> class Details:
... def __init__(self, name, age):
... self.name = name
... self.age = age
... def show_details(self):
... if self.name:
... print "Name : ", self.name
... else:
... print "Name : ", "_"
... if self.age:
... if self.age > 0:
... print "Age : ", self.age
... else:
... print "Age kann nicht -ve sein"
... else:
... print "Age : ", "_"
...
>>> my_details = Details("Rishikesh", 24)
>>>
>>> print my_details
<<__main__.Details-Instanz at 0x10e2e77e8>>
>>>
>>> print my_details.name
Rishikesh
>>> print my_details.age
24
>>>
>>> my_details.show_details()
Name : Rishikesh
Age : 24
>>>
>>> person1 = Details("", 34)
>>> person1.name
''
>>> person1.age
34
>>> person1.show_details
>>
>>>
>>> person1.show_details()
Name : _
Age : 34
>>>
>>> person2 = Details("Rob Pike", 0)
>>> person2.name
'Rob Pike'
>>>
>>> person2.age
0
>>>
>>> person2.show_details()
Name : Rob Pike
Age : _
>>>
>>> person3 = Details("Rob Pike", -45)
>>>
>>> person3.name
'Rob Pike'
>>>
>>> person3.age
-45
>>>
>>> person3.show_details()
Name : Rob Pike
Age kann nicht -ve sein
>>>
>>> person3.__dict__
{'age': -45, 'name': 'Rob Pike'}
>>>
>>> person3.__dict__.keys()
['age', 'name']
>>>
>>> person3.__dict__.values()
[-45, 'Rob Pike']
>>>
99 Stimmen
Praktisch jeder in Python benennt seine Klassen wie
NewClass
. Du könntest die Erwartungen der Leute herausfordern, wenn du eine Benennungskonvention wienew_class
verwendest.1 Stimmen
Auch wenn es interaktiv für Menschen ist und nicht programmgesteuert verwendet werden kann, hilft die
help()
-Funktion bei der Beschaffung von Informationen über Klassen, Funktionen, integrierte Funktionen, Module und mehr2 Stimmen
Relevant: stackoverflow.com/questions/1398022/…