class Student(object): # Klassenvariablen anzahl = 0 studenten = [] matrikelnummer = 20140000 def __init__(self,name, vorname): # Instanzvariablen self.bezeichner self.anzahl = Student.anzahl Student.anzahl = Student.anzahl +1 # Klassenvariable erhohen (Klasse.Bezeichner) self.name = name self.vorname = vorname self.matrikelnummer = Student.matrikelnummer Student.matrikelnummer += 1 self.course = set() Student.studenten.append(self) #Stack (Klassenvariable) mit Instanz füllen def __del__(self,matrikelnummer): for student in Student.studenten: if student.matrikelnummer == matrikelnummer: Student.anzahl -=1 del student def printDetails(self): print "Name: ",self.name,"| Vorname: ",self.vorname, "| Matrikelnummer: ",self.matrikelnummer,"| Kurs: ",self.course def enroll(self,course): self.course.add(course) def printNoOfStudents(self): print self.anzahl def printCourseParticipants(self, course): for student in Student.studenten: for kurs in student.course: if course == kurs: student.printDetails() #Fuer import, damit nicht sofort ausgefuehrt wird -> import datei ohne (suffix .py) --> test.main() --> execute def main(): #Anlegen der Instanzen x = Student("Mustermann","Max") x.enroll("Mathematik1") x.enroll("Mathematik2") y = Student("Mustermann","Maike") y.enroll("Mathematik2") #Ausgabe Instanzdetails x.printDetails() x.printNoOfStudents() y.printDetails() y.printNoOfStudents() #Ausgabe Kursinformation - Wer belegt alles diesen Kurs, benötige aber irgendeine Instanz fuer die Methode x.printCourseParticipants("Mathematik2") #import unittest #Ueberall importieren if __name__ == '__main__': main()
Run
Reset
Share
Import
Link
Embed
Language▼
English
中文
Python Fiddle
Python Cloud IDE
Follow @python_fiddle
Browser Version Not Supported
Due to Python Fiddle's reliance on advanced JavaScript techniques, older browsers might have problems running it correctly. Please download the latest version of your favourite browser.
Chrome 10+
Firefox 4+
Safari 5+
IE 10+
Let me try anyway!
url:
Go
Python Snippet
Stackoverflow Question