向python模块(而不是类)动态添加函数?

2024-05-16 17:51:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道我可以使用setattr方法将它添加到特定的类或其实例中。但在我的例子中,我想动态地“添加”它来表示公用事业.py模块,使每个执行“导入实用程序”的文件都能看到这个新函数。你知道吗


Tags: 模块文件方法函数py实用程序动态例子
1条回答
网友
1楼 · 发布于 2024-05-16 17:51:02

让我们调用您的“新函数”new_func()。我不太清楚你的意思是:

  • import utilities将使utilities.new_func()可用

或者

  • import utilities将使new_func()在没有utilities前缀的情况下可用。你知道吗

如果是前者:

只需将函数放在模块顶级命名空间中的某个模块内。换句话说def new_func()不应该缩进。你知道吗

如果是后者:

您运气不好;您需要将import utilities更改为from utilities import *,这是不推荐的,并且与显式导入new_func()一样多的工作。你知道吗

相关问题 更多 >