import numpy.matlib 在Python中是什么意思?

import numpy.matlib import numpy as np 这个我看不懂,已经 import numpy 了,为什么还要单独 import numpy.matlib


import numpy.matlib 在Python中是什么意思?
4 回复

import numpy.matlib 了就可以直接使用 matlib 啊,要不然你还得 np.matlib。百度一下就有的吧…


import numpy.matlib 是导入 NumPy 库中的矩阵子模块。这个模块提供了专门用于矩阵运算的函数和类,比如 numpy.matlib.rand() 可以生成随机矩阵,numpy.matlib.eye() 生成单位矩阵。不过,现在更常用的做法是直接用 numpy.array 创建数组,然后用 @ 操作符或 numpy.dot() 做矩阵乘法,因为 array 更通用。除非你特别需要 matlib 里的某个函数,否则直接用 numpy 就行。

总结:现在直接用 numpy.array 做矩阵运算更常见。

大概我猜有点类似于 java 的 import static

import numpy 等于 import numpy.init.py

import numpy.matlib 等于 import numpy.matlib.py 或者 import numpy.matlib.init.py


----

如果在 numpy.__init.py 里面写了以下代码:

from numpy.matlib import *


那么 在使用的时候,可以不 import numpy.matlib。

numpy.matlib.xxx 就可以用 numpy.xxx 调用


----
显然作者没有这么写。 所以还是要老老实实 import numpy.matlib

----

之所以不这么写的原因,是因为这个 submodule 不属于 main_module 的基础范围内,可是又有很多人使用,所以还是加了进去,不然也会有第三方的库来实现,可能是 numpy_matlib。

又或者是,这是一个底层库,一般情况下并不需要用到这些 lower api,所以不放入 init.py 中,只有高级开发者,或者库的改造者才需要用到。

回到顶部