ich habe ein Jupyter Notebook angelegt:
Code: Alles auswählen
from IPython.html import widgets
from IPython.display import display
current = (10, 10)
def function(b):
print(current)
first = current[0]
second = current[1]
current=(first-1, second)
print(current)
btn = widgets.Button(description="<left<")
btn.on_click(function)
display(btn)
---------------------------------------------------------------------------
UnboundLocalError Traceback (most recent call last)
<ipython-input-70-090f1afe514c> in left(c)
8
9 def left(c):
---> 10 print(current)
11 first = current[0]
12 second = current[1]
UnboundLocalError: local variable 'current' referenced before assignment
Wenn ich in der Funktion NUR printe, kommt kein Fehler:
Code: Alles auswählen
from IPython.html import widgets
from IPython.display import display
current = (10, 10)
def function(b):
print(current)
btn = widgets.Button(description="<left<")
btn.on_click(function)
display(btn)
(10, 10)
Wo liegt das Problem im ersten Fall?
Gelten für Funktionen, die Buttons zugewiesen werden, besondere Regeln?
Mein Ziel ist es, per Button-Click eine Variable zu inkrementieren/dekrementieren.
Ich hoffe, jemand kann helfen.
Vielen Dank,
Apotekarnes