|
|
1
2
在本例中,您可以简单地将函数作为对象移交给中的方法
在Python中,您可以将函数和类传递给其他方法并在那里调用/创建它们。
从上面看,您的模块略有更改:
一些注释
编辑
:添加了关于如何显式传递的环境的代码示例
|
|
|
2
1
函数总是在其定义的范围内执行,方法和类主体也是如此。它们永远不会在另一个作用域中执行。因为导入只是另一个赋值语句,Python中的所有内容都是引用,所以函数、类和模块甚至不知道导入到哪里。 您可以做两件事:显式地传递您希望他们使用的“环境”,或者使用stack hackery访问调用者的命名空间。前者比后者更受欢迎,因为它不像后者那样依赖于实现和脆弱。
|