SyntaxError: kan niet toewijzen aan functieaanroep

Deze regel in mijn programma:

invest(initial_amount,top_company(5,year,year+1)) = subsequent_amount

waardoor ik deze fout krijg:

SyntaxError: can't assign to function call

Hoe los ik dit op en gebruik ik de waarde van de functieaanroep?


Antwoord 1, autoriteit 100%

Syntactisch heeft deze regel geen zin:

invest(initial_amount,top_company(5,year,year+1)) = subsequent_amount

U probeert een waarde toe te kennen aan een functieaanroep, zoals de fout zegt. Wat probeer je te bereiken? Als je subsequent_amountprobeert in te stellen op de waarde van de functie-aanroep, verander dan de volgorde:

subsequent_amount = invest(initial_amount,top_company(5,year,year+1))

Antwoord 2, autoriteit 35%

Je hebt de toewijzing achterstevoren geschreven: om een ​​waarde (of een uitdrukking) aan een variabele toe te kennen, moet die variabele aan de linkerkant van de toewijzingsoperator (= in python) staan

subsequent_amount = invest(initial_amount,top_company(5,year,year+1))

Antwoord 3, autoriteit 5%

U wijst een functie-aanroep toe:

invest(initial_amount,top_company(5,year,year+1)) = subsequent_amount

wat illegaal is in Python. De vraag is: wat wil je doen? Wat doet invest()? Ik veronderstel dat het een waarde retourneert, namelijk wat je probeert te gebruiken als subsequent_amount, toch?

Zo ja, dan zou zoiets als dit moeten werken:

amount = invest(amount,top_company(5,year,year+1),year)

Antwoord 4, autoriteit 5%

Je hebt het achterstevoren gedaan, het zou moeten zijn:

amount = invest(amount,top_company(5,year,year+1),year)

LEAVE A REPLY

Please enter your comment!
Please enter your name here

12 − 9 =

Other episodes