Ipython 如何在ipywidgets上定义滑块小部件的默认值?

Ipython 如何在ipywidgets上定义滑块小部件的默认值?,ipython,ipython-notebook,jupyter,jupyter-notebook,ipywidgets,Ipython,Ipython Notebook,Jupyter,Jupyter Notebook,Ipywidgets,在Jupyter笔记本上,使用ipywidgets,我可以使用精简版创建滑块 import ipywidgets as ip def f(x): print(x) ip.interact(f, x = (0, 1, 1)) 滑块的默认值为0,但我希望将其设为1。如何执行此操作?在函数定义中设置默认值应该可以: 将ipywidgets导入为ip def f(x=1): 打印(x) 交互(f,x=(0,1,1)) 小部件缩写(使用元组请求滑块等)仅公开可传递给小部件的选项的一小部分。默认值

在Jupyter笔记本上,使用ipywidgets,我可以使用精简版创建滑块

import ipywidgets as ip
def f(x):
    print(x)
ip.interact(f, x = (0, 1, 1))

滑块的默认值为0,但我希望将其设为1。如何执行此操作?

在函数定义中设置默认值应该可以:

将ipywidgets导入为ip
def f(x=1):
打印(x)
交互(f,x=(0,1,1))
小部件缩写(使用元组请求滑块等)仅公开可传递给小部件的选项的一小部分。默认值来自函数定义中的默认值(如果可用),或者来自范围的中心(如果不可用)。如果不希望更改现有函数的签名以为其提供默认参数,则有两个选项可以指定初始值:

  • 将函数包装到另一个指定默认值的函数中:

    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)
    
  • 直接实例化小部件并指定
    属性,而不是依赖缩写:

    w = widgets.IntSlider(value=1, min=0, max=1)
    interact(f, x=w)
    

  • 成功了!谢谢,不过这迫使我重新排序函数输入,使所有具有默认值的都位于函数声明的末尾!理想情况下,我会在小部件声明中使用默认值。但是你的解决方案帮助了我!感谢您这项工作是因为
    f
    中的
    x=1
    默认参数,而不是因为
    interact
    调用中
    x
    的元组中的第三个
    1