Python 3.x 如何告诉“iPyWistGo.Actudio”,它应该只考虑特定的参数作为小部件?

Python 3.x 如何告诉“iPyWistGo.Actudio”,它应该只考虑特定的参数作为小部件?,python-3.x,widget,default-value,interactive,ipywidgets,Python 3.x,Widget,Default Value,Interactive,Ipywidgets,它看起来像是ipywidgets.interactive试图将函数后面的每个输入都变成一个小部件。在下面的示例中,我得到两个小部件,一个用于age,另一个用于name: import ipywidgets def greetings(age, name='John'): print(f'{name} is {age} years old') ipywidgets.interactive(greetings, age = widgets.IntSlider(), name = "Bo

它看起来像是
ipywidgets.interactive
试图将函数后面的每个输入都变成一个小部件。在下面的示例中,我得到两个小部件,一个用于
age
,另一个用于
name

import ipywidgets 

def greetings(age, name='John'):
    print(f'{name} is {age} years old')

ipywidgets.interactive(greetings, age = widgets.IntSlider(), name = "Bob")
我的期望是,对于
age
,我只得到一个小部件,因为它的类型是
ipywidgets.widgets.widget\u int.IntSlider
,而
“Bob”
的类型是
str
(我看不到小部件的链接)。自动创建小部件会导致两个问题:1。我不希望用户可以指定每个参数2。一些参数,如元组(示例中未显示)将导致错误

<强>如何告诉代码> IPyWIDGET.Actudio,它应该只考虑特定的参数作为小部件?< /强>


帮助(ipywidgets.interactive)
没有帮助。

首先,感谢您提供了清晰的示例和说明

您可以利用ipywidgets中的
fixed
函数通过交互式调用传递任何类型的固定Kwarg,但不为它们生成小部件。见下文:

导入ipywidgets
def问候语(年龄,姓名class='John'):
打印(f'{name}为{age}year')
ipywidgets.interactive(问候语,
age=ipywidgets.IntSlider(),
name=ipywidgets.fixed(“Bob”)
)
您还应该能够通过此方法传递元组。请参阅文档中的更多信息: