在python类中导入模块

保罗:

我目前正在写一个需要的课程osstat以及其他一些课程

在课堂上导入这些模块的最佳方法是什么?

我在考虑其他人何时使用它,我希望在实例化类时已经导入了“依赖”模块。

现在,我将它们导入我的方法中,但是也许有更好的解决方案。

水果和蔬菜:

如果您的模块将始终导入另一个模块,请始终将其放在顶部,如PEP 8和其他答案所示。此外,作为@delnan提到了一个评论,sysos等正在反正使用,所以它不会伤害到全球范围内导入。

但是,如果确实只在某些运行时条件下需要一个模块,那么条件导入没有任何问题。

如果仅在定义了类的情况下才想导入它们(例如,如果该类位于条件块或另一个类或方法中),则可以执行以下操作:

condition = True

if condition:
    class C(object):
        os = __import__('os')
        def __init__(self):
            print self.os.listdir

    C.os
    c = C()

如果只希望在实例化该类时将其导入,请在__new__或中进行操作__init__

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章