PEP 8说:
- 导入总是放在文件的顶部,就在任何模块注释和文档字符串之后,以及模块全局变量和常量之前.
在发生时,我违反了PEP 8.有时我会在函数中导入内容.作为一般规则,如果导入仅在单个函数中使用,则执行此操作.
任何意见?
编辑(我觉得导入函数的原因可能是一个好主意):
主要原因:它可以使代码更清晰.
from m import xxx.看到m.xxx这个功能可能会告诉我更多.具体取决于m:它是一个众所周知的顶级模块/包(import m)吗?或者它是一个子模块/包(from a.b.c import m)?假设我有一个相对较长的模块,但只需要一次外部模块或方法.
在模块中间导入该方法或模块是否可以?
或者应该import只在模块的第一部分.
例:
import string, pythis, pythat
...
...
...
...
def func():
blah
blah
blah
from pysomething import foo
foo()
etc
etc
etc
...
...
...
Run Code Online (Sandbox Code Playgroud)
请证明您的答案是合理的,并添加指向PEP或相关来源的链接
我创建了一个名为的模块util,它提供了我经常在Python中使用的类和函数.其中一些需要导入功能.在类/函数定义中导入所需内容的优点和缺点是什么?它比import模块文件的开头更好吗?这是个好主意吗?