我有一个看似简单的意图,在jupyter笔记本中有一个下拉小部件来触发一些简单的操作。它似乎有效,但是以下脚本实际上似乎会触发三次事件,我做错了什么?
import ipywidgets as widgets
from IPython.display import display, clear_output
vardict = ["var1","var2"]
select_variable = widgets.Dropdown(
options=vardict,
value=vardict[0],
description='Select variable:',
disabled=False,
button_style=''
)
def get_and_plot(b):
clear_output
print(select_variable.value)
display(select_variable)
select_variable.observe(get_and_plot)
我选择下拉列表项后的输出类似于:
var1
var2
var2
每次选择都会使列表变得越来越长。
我想要的是一种方法,只有在每次选择时触发操作(打印或其他操作),如何实现这一点?
clear_output
应该改为clear_output()
。 - JeremyDouglass