用Python导入模块 - 推荐位置

Gab*_*iel 2 python workflow coding-style module

这是关于良好python编码和定位的问题.

我有一个很大的代码,我使用了很多外部模块/包/函数.目前我将所有这些加载到代码的最顶层,因为这就是我看到它完成的方式.这很麻烦,例如当我需要注释掉一段代码进行测试时,因为我需要上去,查找块正在使用的模块并将它们注释掉.我知道,我不具备做这最后一部分,但我这样做是为保证一致性,因为我不喜欢导入我不会用的东西.

如果导入的模块位于使用它们的块的正上方,则此过程将更容易,并且代码将更容易遵循,至少对我而言.

我的问题是,是否建议在代码的开头导入所有模块,还是应该在必要时在整个代码中执行?

sph*_*ere 7

它正式建议在开始时导入,参见PEP8:

导入总是放在文件的顶部,就在任何模块注释和文档字符串之后,以及模块全局变量和常量之前.

应按以下顺序对导入进行分组:

  • 标准库导入
  • 相关的第三方进口
  • 本地应用程序/库特定导入
  • 您应该在每组导入之间添加一个空行.

__all__在导入之后放置任何相关规范.