Python 在函数定义之前立即导入依赖项是一种好的做法吗?

Python 在函数定义之前立即导入依赖项是一种好的做法吗?,python,Python,比如说, import numpy def text(): ... 如果有很多import语句,我个人觉得在需要的时候导入似乎比在文件顶部导入更好。这样做的一个主要好处是使读者更容易理解代码,并立即知道从何处导入依赖项 这样做有副作用吗 python最佳实践的最终指导原则在样式指南中。在指南部分链接: 导入总是放在文件的顶部,就在任何模块注释和docstring之后,模块全局变量和常量之前 在你的问题中,你断言: 这样做的一个主要好处是使读者更容易理解代码,并立即知道从何处导入依赖项 但事

比如说,

import numpy
def text():
  ...
如果有很多import语句,我个人觉得在需要的时候导入似乎比在文件顶部导入更好。这样做的一个主要好处是使读者更容易理解代码,并立即知道从何处导入依赖项


这样做有副作用吗

python最佳实践的最终指导原则在样式指南中。在指南部分链接:

导入总是放在文件的顶部,就在任何模块注释和docstring之后,模块全局变量和常量之前

在你的问题中,你断言:

这样做的一个主要好处是使读者更容易理解代码,并立即知道从何处导入依赖项


但事实恰恰相反。如果打开一个.py文件,我可以快速扫描前几行以查看运行脚本所需的所有依赖项。如果每一个都是在下面导入的,那么突然我必须扫描整个文件,看看是否需要库以及何时需要库。请记住,代码在编写时会被查看几次,通常只是由作者或与作者关系密切的人查看,但可以多读10倍,对于不熟悉该脚本的人来说

这将违反以下规则:“导入总是放在文件的顶部,就在任何模块注释和文档字符串之后,模块全局变量和常量之前。”要添加到@juanpa.arrivillaga answer,请检查以下响应: