Mutable default argument
Në shqip: Vlera e paracaktuar e ndryshueshme
ShpjegimiSQ
Një nga kurthet më të famshme të Python-it: po e vure një listë si vlerë të paracaktuar (def shto(x, lista=[])), e njëjta listë ripërdoret në çdo thirrje dhe mbledh vlera nga thirrjet e mëparshme. Përdor None dhe krijo listën brenda.
EnglishEN
One of Python's most famous traps: if you use a list as a default value (def add(x, lst=[])), the same list is reused on every call and collects values from earlier calls. Use None and create the list inside.
Si ta mendosh
Si një fletore e përbashkët që mbetet në bankë: çdo nxënës i ri gjen shënimet e të mëparshmit.
Lexoje në anglisht
Like a shared notebook left on the desk: every new student finds the previous one's notes.
Shembull kodipython
def shto(x, lista=None):
if lista is None:
lista = []
lista.append(x)
return lista