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!
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
这里讲讲我遇到的一些其他的问题
我在anaconda里新建了一个环境
conda create -n your_env_name python=x.x
按照Windows上面的依赖版本依次安装了
pip uninstall numpy
pip install numpy==1.19.5
通过上述两步骤后,发现我的打包显示的python还是不是我创建的环境的。
最后发现,切换环境需要在pyinstaller的命令中加-p指定环境路径
流程:
1.尽量一个project建一个environment。
这样不仅可以避免互相版本干扰,还可以减少程序打包被打进去的依赖,使得打包文件夹小一些。
尽量不要所有的项目混用一个environment。
2.可以在服务器上建立一个docker,这个道理就类似建立一个虚机,里面可以装需要的系统,配置相应的环境。
3.如果对方服务器不能联网什么都不支持的话,可以考虑把服务放docker打包成镜像,去运行。