Python 在Jupyter笔记本中使用ipywidgets和asyncio以交互方式创建列表

Python 在Jupyter笔记本中使用ipywidgets和asyncio以交互方式创建列表,python,asynchronous,jupyter-notebook,widget,ipywidgets,Python,Asynchronous,Jupyter Notebook,Widget,Ipywidgets,我正在尝试编写一组函数,允许我使用Jupyter笔记本“交互式”创建列表(基于不同预定义列表中的值)。在最高级别,这些函数将打印一个项目(例如,一种动物),然后我将使用交互式文本框为该项目(例如,“bird”或“fish”)提供注释,然后我的注释将存储在新列表中 像这样的事情是我想做的(但显然不完全是这样): 脚本当前崩溃,出现以下警告: task: <Task pending coro=<f() done, defined at <ipython-input-31-d698d

我正在尝试编写一组函数,允许我使用Jupyter笔记本“交互式”创建列表(基于不同预定义列表中的值)。在最高级别,这些函数将打印一个项目(例如,一种动物),然后我将使用交互式文本框为该项目(例如,“bird”或“fish”)提供注释,然后我的注释将存储在新列表中

像这样的事情是我想做的(但显然不完全是这样):

脚本当前崩溃,出现以下警告:

task: <Task pending coro=<f() done, defined at <ipython-input-31-d698dc6b74bc>:17> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x109a71f10>()]>>
任务:
asyncio.Future()有关的内容


提前感谢您的帮助。

好的,我已经知道了如何做到这一点-下面的代码基于此

下一个代码块使用一个协程和
asyncio
(这解释了这里发生的事情)

然后调用函数并进行注释

#iterate through annotations, save results
annotations = asyncio.create_task(f())

#display buttons
HBox([button1,button2])
#get the results
annotations.result()
最后,对所有项目进行注释后,访问注释

#iterate through annotations, save results
annotations = asyncio.create_task(f())

#display buttons
HBox([button1,button2])
#get the results
annotations.result()
#get the results
annotations.result()
['bird', 'fish', 'fish', 'bird']