我正在使用ipython小部件的交互函数,我想将选择用作函数外的变量。例如
import ipywidgets as widgets
from ipywidgets import interact, interactive
list1 = ['ABC','DEF','GHI']
@interact
def uni_systems(items = list1):
choice = items
它给了我一个互动的辍学者。现在我喜欢在函数外使用choice或dropout选择,但它还没有定义。如何在功能之外使用它来进行任何进一步的处理
IIUC,在函数中赋值之前插入global choice
语句。基本上,将其创建为全局变量,这样您就可以在函数之外使用它
一个比全局变量封装得稍好的解决方案是将结果分配给函数的一个属性:
@interact
def uni_systems(items = list1):
uni_systems.choice = items
uni_systems('foo')
print(uni_systems.choice)
在第一次调用函数之前尝试访问结果将引发AttributeError
。