代码之家  ›  专栏  ›  技术社区  ›  Filip Dupanović

是否使用“导入模块”或“从模块导入”?

  •  293
  • Filip Dupanović  · 技术社区  · 16 年前

    import module from module import

    基本上,我希望如果有人能分享他们的经验,其他开发者有什么偏好,以及什么是避免这些偏好的最好方法 戈查斯 沿着这条路走?

    13 回复  |  直到 4 年前
        1
  •  0
  •   Chris Collett    3 年前

    两者的区别 import module from module import foo 主要是主观的。选择一个你最喜欢的,并在使用中保持一致。这里有一些要点可以帮助您做出决定。

    导入模块

    • 赞成的意见:
      • import 声明。无需添加任何其他导入即可开始使用模块中的其他项
      • 打字 module.foo 在您的代码中,可能会出现乏味和冗余(通过使用 import module as mo 然后打字 mo.foo )

    从模块导入foo

      • 少用打字 foo
      • 对可访问模块的哪些项进行更多控制
    • 欺骗:
      • 要使用模块中的新项,您必须更新 进口 陈述
      • . 例如,不太清楚是什么 ceil() math.ceil()

    这两种方法都可以接受,但是 不要 使用 from module import * .

    对于任何合理的大型代码集,如果 import * 您可能会将其固定到模块中,无法移除。这是因为很难确定代码中使用的项目来自“模块”,从而很容易得出您认为不使用 进口 还有,但很难确定。