Python/ipywidgets 链接不同功能中的多个小部件的功能
Python/ipywidgets functions that links multiple widgets in different functions
我正在寻找一个简单的函数,它可以 link 动态地执行下面的 2 个函数,以便通过更改 D 或 R 的值,A 将相应地更改。
from ipywidgets import interact, interactive, fixed, interact_manual
import ipywidgets as widgets
dW = widgets.Dropdown(options=['2', '1'])
rW = widgets.FloatText(200)
aW = widgets.FloatText()
@interact(D=dW, R=rW)
def print_p(D, R):
dW = D
rW = R
@interact(A=aW)
def prin_t(A):
aW.value = int(dW.value) * int(rW.value)
我认为 interact
在这里引起了一些混乱,为什么不对 dW 和 rW 使用标准的 observe
调用呢?
import ipywidgets as widgets
dW = widgets.Dropdown(options=['2', '1'])
rW = widgets.FloatText(200)
aW = widgets.FloatText()
def change_a(_):
aW.value = int(dW.value) * int(rW.value)
dW.observe(change_a)
rW.observe(change_a)
display(widgets.VBox(children=[dW, rW, aW]))
我正在寻找一个简单的函数,它可以 link 动态地执行下面的 2 个函数,以便通过更改 D 或 R 的值,A 将相应地更改。
from ipywidgets import interact, interactive, fixed, interact_manual
import ipywidgets as widgets
dW = widgets.Dropdown(options=['2', '1'])
rW = widgets.FloatText(200)
aW = widgets.FloatText()
@interact(D=dW, R=rW)
def print_p(D, R):
dW = D
rW = R
@interact(A=aW)
def prin_t(A):
aW.value = int(dW.value) * int(rW.value)
我认为 interact
在这里引起了一些混乱,为什么不对 dW 和 rW 使用标准的 observe
调用呢?
import ipywidgets as widgets
dW = widgets.Dropdown(options=['2', '1'])
rW = widgets.FloatText(200)
aW = widgets.FloatText()
def change_a(_):
aW.value = int(dW.value) * int(rW.value)
dW.observe(change_a)
rW.observe(change_a)
display(widgets.VBox(children=[dW, rW, aW]))