将类的所有属性和方法导入python

时间:2019-05-21 14:32:35

标签: python

我想按照以下几行从类的本地定义实例中导入属性和方法:

from myClassInstance import *

一个动机:这是当我从脚本转换为类时,事情变得多么丑陋:

enter image description here

我需要在所有这些属性和方法的前面加上hs.前缀。但是,有没有办法将所有这些属性和方法导入当前名称空间?我问这是 possible (是否被认为是 pythonic ..不太感兴趣)

更新虽然选择/授予了一个更大的问题的答案-将脚本转换为 unit-testable 类的问题却没有成功。对于一个小任务来说,重构的数量过多。在这一点上,我必须坚持使用整体脚本。也许我会继续提出一个有关将脚本整体转换为可单元测试的基于类的方法而无需进行拖拉的方法的问题。

1 个答案:

答案 0 :(得分:1)

这是一个非常糟糕的技巧,您永远都不要这样做。

您可以从这样的对象中模拟import。但是请不要

class SomeClass(object):

    def method1(self):
        print(1)

    def method2(self):
        print(2)



if __name__ == '__main__':

    s = SomeClass()
    for a in dir(s):
        if callable(getattr(s, a)):
            globals()[a] = getattr(s, a)
    method1()

输出:

1