该包包含 ZeroMQ 的 Python 绑定。 ØMQ 是一种轻量级且快速的消息传递实现。
PyZMQ 应该与任何合理版本的 Python (≥ 3.7) 以及 PyPy 一起使用。 CPython 使用的 Cython 后端支持 libzmq ≥ 2.1.4(包括 3.2.x 和 4.x),但 PyPy 使用的 CFFI 后端仅支持 libzmq ≥ 3.2.2(包括 4.x)。
有关 pyzmq 更改的摘要,请参阅我们的更改日志。
PyZMQ 完全支持 libzmq 的 3.x 和 4.x API,在 Zeromq/libzmq 上开发。无需更改代码,无需传递标志,只需针对最新版本构建 pyzmq 即可工作。
PyZMQ 不支持 PyPy 上旧的 libzmq 2 API。
请参阅 PyZMQ 的 Sphinx 生成的文档,了解 API 详细信息以及有关 Python 和 Cython 开发的一些注释。如果您想了解如何使用 ØMQ,优秀的 ØMQ 指南是您的起点,其中每个示例都有 Python 版本。我们的维基上也有一些信息。
除非您特别想开发 PyZMQ,否则我们建议从 PyPI 下载 PyZMQ 源代码或轮子,或使用 conda 安装。
您还可以从我们的 GitHub 存储库获取最新的源代码,但从存储库构建需要您安装最新的 Cython。
有关构建 pyzmq 的更多详细信息,请参阅我们的文档。
我们为 macOS、Windows 和 Linux 构建 Wheel,因此您可以通过以下方式在这些平台上获取二进制文件:
pip install pyzmq
但使用pip install pyzmq
从源代码编译应该可以在大多数环境中工作。确保您使用的是最新的点,否则它可能找不到合适的轮子。
如果由于某种原因轮子不起作用,或者您想强制编译 pyzmq(如果您已经安装了 libzmq 并按照您想要的方式配置,这通常是更好的选择),您可以使用以下命令强制从源安装:
pip install --no-binary=pyzmq pyzmq
pyzmq 16 不再支持 Python 2.6 和 3.2。如果您需要使用这些 Python 版本之一,您可以将 pyzmq 版本固定到 16 之前:
pip install 'pyzmq<16'
对于 libzmq 2.0.x,使用 'pyzmq<2.1'
pyzmq-2.1.11 是 pyzmq 支持 Python 2.5 的最后一个版本,pyzmq ≥ 2.2.0 需要 Python ≥ 2.6。 pyzmq-13.0.0 通过 CFFI 引入了 PyPy 支持,仅支持 libzmq-3.2.2 及更高版本。
PyZMQ 版本 ≤ 2.2.0 与 libzmq 版本控制匹配,但从 PyZMQ 13.0.0 开始,情况不再如此(这是第十三个版本,所以为什么不呢?)。 PyZMQ ≥ 13.0 遵循仅适用于 PyZMQ 本身的语义版本控制约定。