【发布时间】:2017-08-21 12:41:01
【问题描述】:
有两个模块:main 和 my_module。还有一个函数 my_func 从 my_module 导入并在整个主模块中使用,如
#main.py
from my_module import my_func
def main_func1():
#do smth
my_func()
#do smth
def main_func2():
#do smth
my_func()
#do smth
def main():
#do smth
main_func1()
my_func()
main_func2()
#do smth
当我重写my_module 中的代码时问题就开始了,现在my_func 是一个类的方法。
如果my_func 仅在main() 中,那么更改主模块将非常容易
from my_module import myClass
def main():
c = myClass(init_parameters)
#do smth
main_func1()
c.my_func()
main_func2()
#do smth
但是main_func1 和main_func2 呢?我怎样才能创建实例,并且它的方法像以前的例子一样使用?除了将其作为参数传递或在每个函数中创建另一个解决方案之外,还有其他解决方案吗?
【问题讨论】:
-
这是 class 方法还是 instance 方法?因为您似乎是在实例上调用它。
-
实例方法。抱歉,我一点也不擅长术语和 OOP
标签: python class module arguments python-import