用rust实现的python图形库

retworkx的Python项目详细描述


retworkx是python3的rust图形库接口。现在是范围 是作为qiskit-terra的潜在替代品的一个实验 networkx用法(因此得名)。范围可能会随着时间的推移而增长或改变,但是 一开始就是要建一个DAG,然后用表演来操作它 以及铁锈带来的安全。这也是学习如何 将rust与python接口。

安装retworkx

retworkx在pypi上发布,因此在x86_64和i686 linux系统上或在x86_64上 Mac OSX和Windows的安装就像运行一样简单:

pip install retworkx

这将在您的python中安装一个预编译版本的retworkx。 环境。

但是,如果没有为您的 系统你必须编译代码。源包也发布在 所以您也可以运行上面的命令来安装它。但是,有2个 先决条件是,首先您需要每晚拥有cargo/rustc。 在你的路上。您可以使用rustup来简化此步骤。其次,你 需要在python环境中安装setuptools-rust。这个罐头 只需运行即可完成:

pip install setuptools-rust

运行前:

pip install retworkx

如果您每晚都安装了rust,pip将为您的 本地系统,它应该像预构建的二进制文件一样运行。

从源构建

从源代码构建retworkx的第一步是使用以下命令在本地克隆它:

git clone https://github.com/mtreinish/retworkx.git

retworkx使用PyO3setuptools-rust来构建python接口。 不幸的是,这意味着您需要使用夜间生锈,因为PYO3只起作用 就在这个时候。你可以用rustup来安装铁锈。

一旦你每晚都安装了铁锈和货物,你可以很容易地安装retworkx 使用pip进入python环境。一旦你有了回购协议的本地克隆 您可以使用以下命令将retworkx安装到python env中:

pip install .

假设您当前的工作目录是repo的根目录。否则 您可以运行:

pip install $PATH_TO_REPO_ROOT

安装方法相同。然后在本地python中使用retworkx 环境。不过,做这件事有两件事要注意,首先 尝试使用此方法从repo根目录运行python它不会像您这样工作 期待。由于本地python,repo根目录中存在名称冲突 用于构建包的包垫片。只需运行python脚本或 在repo根目录外使用retworkx的程序。第二个问题是 您对锈代码所做的本地更改不会反映在 python您需要通过重新运行pip install来重新编译源代码 python环境中反映的更改。

使用retworkx

一旦安装了retworkx,就可以通过导入retworkx来使用它。全部 函数和pydag类不在包的根目录下。例如, 构建一个DAG并添加两个节点(它们之间有一条边)将是:

import retworkx

my_dag = retworkx.PyDAG()
# add_node(), add_child(), and add_parent() return the node index
# The sole argument here can be any python object
root_node = my_dag.add_node("MyRoot")
# The second and third arguments can be any python object
my_dag.add_child(root_node, "AChild", ["EdgeData"])

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java根据两个数组的值对数组进行排序   具有自签名证书和NTLM代理的java Maven SSL repo错误   java自定义字体按钮不工作AndroidStudio   java通过Spring MVC web应用程序向客户端发送文本文件   Java Spring Web服务SOAP身份验证   ANT property environment=“env”无法在JAVA中检索它,但如果作为ANT命令运行,则可以正常工作   java是为spring mvc rest api或spring boot api对应用服务器的每个新请求创建的服务、存储库和组件的新实例吗?   java私有静态最终字符串未完成其工作   PKCS12的安全Java密钥重新处理   java JPA继承表每类SQLSyntaxErrorException