Gå til innhold

Er det stygt at en funksjon kaller ser selv?


Anbefalte innlegg

Videoannonse
Annonse
class SomeClass:
def someFunction(self):
	loads of if's and what's ^^
		som kommer fram til
		self.someFunction()

 

Er den god python? Eller er det lurest å sette inn en while-loop og break i stedet?

 

 

Kult! Rekursjon er ofte en elegant og naturlig formulering av algoritmer, som ellers ville blitt veldig hårete med imperative løkker. Man bør være litt obs. på ytelse og ressursbruk, da dype nestinger av rekursive kall ta endel ressurser i form av:

1. Tid: for å allokere en stakkramme (eng: stack frame) for hver instanse av funksjonskallet.

2. Plass: minnebruken til mange stakkrammer (gir f.eks. runtime exceptions i de fleste språk, hvis man uttømmer

stakken, den klassiske "stack overflow" o.l.).

 

Heldigvis har de fleste moderne kompilatorer optimaliseringer som gjøre at man ikke trenger å

bekymre seg særlig, bl.a. fjerning av halerekursjon (eng: tail recursion), som gjør om mange av de enkleste

formene til en løkke internt.

Lenke til kommentar
Heldigvis har de fleste moderne kompilatorer optimaliseringer som gjøre at man ikke trenger å

bekymre seg særlig, bl.a. fjerning av halerekursjon (eng: tail recursion), som gjør om mange av de enkleste

formene til en løkke internt.

 

 

Men python kompileres ikke? Pythonkode blir tolket (god norsk?(interpreted)) når koden kjøres.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...