python - 调用函数作为 __init__() 变量时未定义全局名称
问题描述
我有一个看起来像这样的 Python 文件:
imports
def install_tests(version):
...
class Test(TestConfig):
def __init__(self,
parameters)
super(Test, self).__init__(parameters=parameters)
self.client = install_tests(version)
当我运行这个我得到这个错误:
NameError: global name 'install_tests' is not defined
我不确定这里有什么问题。install_tests
在课堂之外,所以它是global
,我认为我在那里有一个函数的事实表明它已定义。我错过了什么吗?
解决方案
您必须将install_tests
函数影响到类中的变量。
def install_tests(version):
print "install_tests"
class Test(TestConfig):
myMethod = install_tests
def __init__(self,
parameters)
super(Test, self).__init__(parameters=parameters)
self.client = myMethod(version)
希望能帮助到你!
推荐阅读
- mysql - 服务器重启导致 MySQL 复制中断
- docker - 使用 docker-volum 或等效的 Openshift
- reactjs - SyntaxError:未知:默认情况下不支持命名空间标签
- python - os.chmod、os.fchmod 和 os.lchmod 的区别
- javascript - 猫鼬中的承诺数组中的承诺
- javascript - 如何在没有 vue-devtools 的情况下检查页面是否使用 vue.js
- c++ - 如何访问满足 ITK C++ 中特定条件的特定体素?
- android - 将 Google Play 开发者 API 更新到版本 3
- java - 外键映射到 Embeddable 类
- python - 从 mongodb atlas python 读取数据