Python程序无法运行 - psycopg2重命名警告

问题描述 投票:2回答:2

我在Mac上,在终端使用流浪汉。我试图在python中运行一个使用psycopg2的程序。当我运行'python3 sample.py'时,我一直收到一个错误,即psychopg2模块不存在。所以我跑了'pip3 install psycopg2'。现在我得到下面的错误,尽管在多个地方阅读文档,我无法解决这个问题。所以现在我的程序不会运行。

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>.
  """)
python psycopg2
2个回答
3
投票

这只是一个警告,你的程序仍然可以正常运行。

该警告是decision by the package maintainer停止在psycopg2中使用轮组件的结果。 psycopg2包现在设计为从源构建,而psycopg2-binary维护当前的安装方法,但有一些错误触发段错误。两个包都提供相同的接口,因此您不需要为任一选项进行任何代码更新。

最简单的解决方案是只安装二进制包,警告就会消失:

pip install psycopg2-binary

如果您更喜欢安装没有segfault错误的版本,请使用--no-binary标志pip install from source

pip install --no-binary :all: psycopg2

如果您使用的是requirements.txt文件,请添加如下所示的行:

psycopg2>=2.7,<2.8 --no-binary psycopg2

更新

随着psycopg 2.8的发布,警告和二进制包现已被删除。您现在需要做的就是正常安装/更新psycopg2并且警告将消失:

pip install psycopg2

使用requirements.txt:

psycopg2>=2.8

如果您因任何原因确实想继续使用二进制包,则psycopg2-binary仍然可用。


3
投票

这是一个警告而不是错误。它不会阻止您的程序运行。

© www.soinside.com 2019 - 2024. All rights reserved.