在Jupyter笔记本上使用ipywidgets我可以使用紧凑版本创建滑块
import ipywidgets as ip
def f(x):
print(x)
ip.interact(f, x = (0, 1, 1))
滑块的默认值为0,但我想制作1.我该怎么做?
答案 0 :(得分:3)
窗口小部件缩写(使用元组来请求滑块等)仅公开可以传递给窗口小部件的一小部分选项。默认值来自函数定义中的默认值(如果可用),如果不可用,则来自范围的中心。如果您不想更改现有函数的签名以为其指定默认参数,则可以使用两个选项来指定初始值:
将您的函数包装在另一个指定默认值的函数中:
def f(x, y):
print(x, y)
@interact(x=(0, 5), y=(-1.,3.))
def g(x=1, y=2.0):
return f(x, y)
直接实例化Widget并指定value
属性,而不是依赖缩写:
w = widgets.IntSlider(value=1, min=0, max=1)
interact(f, x=w)
答案 1 :(得分:2)
在函数定义中设置默认值应该有效:
import ipywidgets as ip
def f(x=1):
print(x)
ip.interact(f, x = (0, 1, 1))