我最近开始用Python编写代码。在我的脚本的开头,我总是有以下导入:import numpy as np
。
在我的一个脚本中,我使用了np.matlib.repmat
函数。它过去工作正常,但最近它无法运行,显示以下错误:
AttributeError: module 'numpy' has no attribute 'matlib'
我搜索了这个问题,如果一个人的工作目录中有一个名为numpy.py的脚本,或者如果安装的版本不同并且不包含被调用的模块,那么看起来就会出现这样的错误。
我没有将任何文件命名为numpy.py。我还发现,在我调用后:
from numpy import matlib as mb
我可以使用mb.repmat
。因此,我的numpy模块包含matlib
模块。有人能提示我,为什么我不能给np.matlib
打电话吗
发布于 2018-04-19 17:23:00
这已经是答案here了。
这是因为
numpy.matlib
是numpy
的可选子程序包,必须单独导入。当您只导入没有子包matlib
的numpy
时,Python将查找.matlib
作为numpy
包的一个属性。在未导入numpy.matlib
的情况下,此属性尚未分配给numpy
https://stackoverflow.com/questions/49926751
复制相似问题