0

如果用 Python 写一个比较大的应用,有两个文件都需要导入同一个 module

比如:一个文件 core.py 需要:

import numpy as np

另一个文件 main.py 需要导入上面的文件,并且也需要用到 numpy,

import numpy as no
import core

import core.np as np
import core

这两种方式哪个更好,假如需要非常大的运算量,会有速度上的影响吗?

查看全部 6 个回答

0

第一种吧,性能上其实区别不大,但是第二种显的重复而且晦涩,完全可以import core然后使用core.np,python
之禅里面强调显式优于隐式。有一点需要注意,如果你的代码在core里对numpy模块的任何属性做了重绑定,则就不要再用原生的numpy而是用corn.np

推荐答案

2
import numpy as np
import numpy as np

在一个文件中或者不同文件中 import 一个模块多次,python 只会在第一次的时候执行这个模块的相关代码。所以性能上没有差别。

比如:

# a.py
print("I'm module a, you are importing me...")
# b.py
import a
import a

你可以看到只会输出一次