Glavni problem sa klasama s opcionim argumentima je taj što može biti teško odrediti u vrijeme kompajliranja da li je određeni argument potreban ili ne. Ovo može dovesti do grešaka kada se koristi klasa, na primjer ako nedostaje argument.
class MyClass:
def __init__(self, arg1, arg2=None):
self.arg1 = arg1
self.arg2 = arg2
Ovaj kod kreira klasu pod nazivom MyClass. Metoda __init__ uzima dva argumenta, arg1 i arg2. Ako nije navedena vrijednost za arg2, ona je zadana vrijednost None. Metoda __init__ postavlja vrijednost self.arg1 na arg1 i self.arg2 na arg2.
Nastava
U Pythonu, klase su način grupisanja povezanih varijabli i funkcija zajedno. Klasa se može smatrati šablonom za kreiranje objekata. Klase se mogu definirati na više načina, ali najčešći način je korištenje ključne riječi class nakon koje slijedi lista varijabli i definicija funkcija.
Kada je klasa kreirana, automatski joj se daje ime (u ovom primjeru ćemo našu klasu zvati “Person”). Ime klase se također koristi kao ime objekta koji se kreira prilikom instanciranja klase. Za kreiranje objekta koristeći našu klasu Person, koristili bismo sljedeći kod:
>>> uvozna osoba >>> person.name 'John'
Argumenti
Argumentima u Pythonu rukuje poziv funkcije. Prvi argument je ime funkcije, nakon čega slijede argumenti.