bokeh 2.0 Dropdown 缺失值属性
bokeh 2.0 Dropdown missing value attribute
背景虚化 1.4.0
>>> import bokeh
>>> bokeh.__version__
'1.4.0'
>>> from bokeh.models import Dropdown
>>> Dropdown().value is None
True
背景虚化 2.0
>>> import bokeh
>>> bokeh.__version__
'2.0.0'
>>> from bokeh.models import Dropdown
>>> Dropdown().value is None
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'Dropdown' object has no attribute 'value'
现在是否有另一个属性可以用来代替值?
有关 value
属性的用例,请参见 。
Dropdown.value
是一个实现细节,根据其文档字符串,Bokeh 用户不打算使用它。除此之外,Dropdown
在语义上只是按钮的集合。它不应该有 任何 类型的状态,它应该只是将 on_click
事件作为常规按钮发送,就像它在 2.0 中所做的那样。这就是 value
属性在 2.0.0.
中被删除的原因
为了在点击下拉按钮时触发 Python 代码,您可以使用
from bokeh.models import Dropdown
d = Dropdown(label='Click me', menu=['a', 'b', 'c'])
def handler(event):
print(event.item)
d.on_click(handler)
event.item
将包含您单击的菜单项。
背景虚化 1.4.0
>>> import bokeh
>>> bokeh.__version__
'1.4.0'
>>> from bokeh.models import Dropdown
>>> Dropdown().value is None
True
背景虚化 2.0
>>> import bokeh
>>> bokeh.__version__
'2.0.0'
>>> from bokeh.models import Dropdown
>>> Dropdown().value is None
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'Dropdown' object has no attribute 'value'
现在是否有另一个属性可以用来代替值?
有关 value
属性的用例,请参见
Dropdown.value
是一个实现细节,根据其文档字符串,Bokeh 用户不打算使用它。除此之外,Dropdown
在语义上只是按钮的集合。它不应该有 任何 类型的状态,它应该只是将 on_click
事件作为常规按钮发送,就像它在 2.0 中所做的那样。这就是 value
属性在 2.0.0.
为了在点击下拉按钮时触发 Python 代码,您可以使用
from bokeh.models import Dropdown
d = Dropdown(label='Click me', menu=['a', 'b', 'c'])
def handler(event):
print(event.item)
d.on_click(handler)
event.item
将包含您单击的菜单项。