Я пытался автоматически обновить переменную и запустить фрагмент кода после изменения ipywidget.
Пока что единственное частичное решение, которое я нашел, - это объявить вид глобальной переменной, следуя примеру наgithub ( здесь ):
import ipywidgets as widgets
from IPython.display import display
x = 5
slider = widgets.IntSlider()
slider.value = x
def on_change(v):
global x
x = v['new']
slider.observe(on_change, names='value')
display(slider)
В идеале я пытаюсь достичь автоматического изменения значения x после изменения виджета без использования глобальных переменных, а также изменения некоторых ранее определенныхпеременные.Это было бы что-то вроде этого:
x = 5
y = []
slider = widgets.IntSlider()
slider.value = x
def on_change(v):
x = v['new']
y.append(x)
slider.observe(on_change, names='value')
display(slider)