【DEBUG】AttributeError: module ‘numpy‘ has no attribute ‘object‘

error

File “numpy/init.py”, line 305, in getattr
AttributeError: module ‘numpy’ has no attribute ‘object’.
np.object was a deprecated alias for the builtin object. To avoid this error in existing code, use object by itself. Doing this will not modify any behavior and is safe.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
[1995421] Failed to execute script ‘redis’ due to unhandled exception!

solution

1.如果是说仅针对这个问题的话,可能只要把numpy版本降下来就好了。
reference
https://blog.csdn.net/BetrayFree/article/details/134797465
https://github.com/ultralytics/ultralytics/issues/2578
https://wenku.csdn.net/answer/4ea1fc9ee0534fbc874000ce7b90cf65
https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/131430993

others

这里讲讲我遇到的一些其他的问题
我在anaconda里新建了一个环境
conda create -n your_env_name python=x.x
按照Windows上面的依赖版本依次安装了
pip uninstall numpy
pip install numpy==1.19.5
通过上述两步骤后,发现我的打包显示的python还是不是我创建的环境的。
最后发现,切换环境需要在pyinstaller的命令中加-p指定环境路径
流程:

  • conda activate myenv
  • which python (找到路径,到myenv层级即可)
  • pyinstaller -D mywork.py -p /home/anaconda3/envs/myenv/
    这样打包环境就对拉,也就不会报上面的error啦。
    reference:
    https://blog.csdn.net/u012219045/article/details/113612475

learnd from experience

1.尽量一个project建一个environment。
这样不仅可以避免互相版本干扰,还可以减少程序打包被打进去的依赖,使得打包文件夹小一些。
尽量不要所有的项目混用一个environment。
2.可以在服务器上建立一个docker,这个道理就类似建立一个虚机,里面可以装需要的系统,配置相应的环境。
3.如果对方服务器不能联网什么都不支持的话,可以考虑把服务放docker打包成镜像,去运行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值