Apr-25-2023, 05:00 PM
Hello now i want make a new subclass Student and every student get a new number (increase but get the following error
from datetime import datetime, date # Informatie persoon naam sekse en geboortdatum class persoon: def __init__(self, naam, sekse, geboortedatum): self.naam = naam self.sekse = sekse self.geboortedatum = datetime.strptime(geboortedatum, '%d-%m-%Y').date() def getNaam(self): return self.naam def getGebDatum(self): return self.geboortedatum def isVrouw(self): if self.sekse == "V": return True else: return False # Afvraag man of vrouw def isMan(self): if self.sekse == "M": return True else: return False # Leeftijd bepalen def leeftijd(self): today = date.today() age = (today.year - self.geboortedatum.year) return age # Subklasse docent class Docent(persoon): def __init__(self, naam, sekse, geboortedatum, Salaris=0): super().__init__(naam, sekse, geboortedatum,) self.Salaris = Salaris def setSalaris(self, SalarisInput): self.Salaris = SalarisInput def getSalaris(self): return self.Salaris # Salaris verhogen def verhoogSalaris(self, percentage): newSalaris = (self.Salaris / 100) * percentage + self.Salaris self.Salaris = newSalaris # Subklasse Student class Student(persoon): def __init__(self, naam, sekse, geboortedatum): super().__init__(naam, sekse, geboortedatum) self.StudentNr = Nr + 1 def getStudentNr(self): return self.StudentNr s1 = Student("Dennis", "m", "24-02-2000") print(s1.getStudentNr(),s1.getNaam(), s1.leeftijd())
Error:3.4.4 (v3.4.4:737efcadf5a6, Dec 20 2015, 20:20:57) [MSC v.1600 64 bit (AMD64)]
Python Type "help", "copyright", "credits" or "license" for more information.
[evaluate Objectgeoriënteerd programmeren_FeedbackVraag6.py]
Traceback (most recent call last):
File "C:\Python\Objectgeoriënteerd programmeren_FeedbackVraag6.py", line 71, in <module>
s1 = Student("Dennis", "m", "24-02-2000")
File "C:\Python\Objectgeoriënteerd programmeren_FeedbackVraag6.py", line 65, in <module>
self.StudentNr = Nr + 1
builtins.NameError: name 'Nr' is not defined