Python 是否可以列出给定烧瓶应用程序中的所有可用信号?

Python 是否可以列出给定烧瓶应用程序中的所有可用信号?,python,signals,flask,Python,Signals,Flask,是否可以获取给定Flask应用程序(添加了任何附加软件包)可能发送的所有信号的列表?(即,因此可以认购?) 或者Flask应用程序/Flask框架直到信号发送时才知道吗?假设所有包在导入时都创建了信号(并且假设您已经导入了所有您关心的包),您应该能够通过迭代blinker.signal来内省所有通过blinker.signal创建的命名信号blinker.signal是的子类,因此您只需在其上调用键,即可获得所有信号的名称: from blinker import signal # import

是否可以获取给定Flask应用程序(添加了任何附加软件包)可能发送的所有信号的列表?(即,因此可以认购?)


或者Flask应用程序/Flask框架直到信号发送时才知道吗?

假设所有包在导入时都创建了信号(并且假设您已经导入了所有您关心的包),您应该能够通过迭代blinker.signal来内省所有通过blinker.signal创建的命名信号
blinker.signal
是的子类,因此您只需在其上调用
,即可获得所有信号的名称:

from blinker import signal
# import everything else here

print sorted(signal.keys())

请参阅:了解更多信息。

以前接受的答案(由肖恩·维埃拉提供)不适用于Python 3上最新版本的Blinker(1.4)

要获得所有可用的信号(在1.4和1.3上进行验证),您应该

来自闪烁输入信号
所有信号=信号

8年后@你知道它在v1.3上是否仍然有效吗?如果是这样的话,请加上它,然后我会接受这个答案。是的,我刚刚在1.3上测试了这一点,
信号。\uu self\uu.keys()
也是1.3中的方法。注意:这已经被取代;将在早期版本上工作。