Wpis z mikrobloga

Moi drodzy powiedzialby mi ktos dlaczego jak staram sie puscic kod:

lives = 10

def mistake():
lives =- 1
if lives == 0:
print ("Game over!")
else:
print (f"You have {lives} lives left")
mistake()

wyskakuje mi blad :

UnboundLocalError: local variable 'lives' referenced before assignment

#python
  • 17
@hidedeepinside: bo zmienna lives jest zdeklarowana poza przestrzenia funkcji mistake(), zrób coś takiego, przekaż lives jako argument funkcji mistake w podany sposób def mistake(lives). Następnie w odwołaniu się do funkcji użyj mistake(lives). To przekaże zmienna lives do ciała funkcji. Mimo co warto wiedzieć że lives w funkcji nie będzie równa lives poza funkcją. Koniecznie poczytaj o zasięgu funkcji, bo to to jest to w czym masz błąd. Podrzucam ci jak to
Pobierz Przemosz - @hidedeepinside: bo zmienna lives jest zdeklarowana poza przestrzenia funk...
źródło: comment_1642610638HYj5Mav0M4VHto3nE528MQ.jpg