如何在没有选择值的情况下显示ipywidgets.Dropdown

时间:2017-11-03 16:09:34

标签: jupyter-notebook ipywidgets

不再是问题了。问题是较旧的ipywidgets版本行为,看起来在版本7中得到修复。

ipywidgets.Dropdown本身会从选项列表中选出第一个值。
我想显示没有选择值的小部件。
列表中的第一个值是无意义的默认仍需要在工作流路径中反映出来。我读了一个讨论,开发人员将空字符串项添加到列表中。这修复了下拉列表外观(在某种程度上虽然仍然忽略了占位符属性)但是在下拉列表中添加了一个愚蠢的可选空项。添加虚拟"无"项目到列表是不是更好的解决方案。将值设置为无会导致"无效的选择"异常。
我不明白为什么ipywidgets.Dropdown不遵循更简单的小部件的方法,其中允许空值并且显示占位符文本以提示用户选择某些内容。
有没有办法不需要选择小部件?我不知道一些属性设置?如果这是不可能的,那么最简单的解决方法是什么?

2 个答案:

答案 0 :(得分:0)

您只需将下拉值设置为None

即可
import ipywidgets as widgets

d = widgets.Dropdown(options=['hello', 'world'], value=None)
d

Dropdown widget

答案 1 :(得分:0)

在“ ipywidgets” 7.2.1版中,您需要通过将其设置为False来禁用用户更改以能够显示小部件,如下所示:

d = widgets.Dropdown(options=['hello', 'world'], value=None, disabled=False)