百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
R

rust-cpython

> 编程语言
开源

Rust <-> Python 绑定

1.8K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

Rust <-> Python 绑定

Rust-cpython() https://github.com/dgrunwald/rust-cpython/actions/workflows/test.yml ======================= 警告: 此包不再被积极维护。请转至 PyO3 使用。 Rust 绑定到 Python 解释器。 * 文档 * Cargo 包: cpython — — 版权所有 (c) 2015-2021 Daniel Grunwald。Rust-cpython 遵循 MIT 许可证。Python 遵循 Python 许可证。 支持的 Python 版本: * Python 2.7 * Python 3.7 到 3.12 警告: 此包不再被积极维护。请转至 PyO3 使用。 需要 Rust 1.41.1 或更高版本。 # 使用 要使用 cpython,请将以下内容添加到您的 Cargo.toml:

toml
cpython = "0.7"

示例程序显示 sys.version 的值:

rust
use cpython::{Python, PyDict, PyResult};

fn main() {
    let gil = Python::acquire_gil();
    hello(gil.python()).unwrap();
}

fn hello(py: Python) -> PyResult<()> {
    let sys = py.import("sys")?;
    let version: String = sys.get(py, "version")?.extract(py)?;

    let locals = PyDict::new(py);
    locals.set_item(py, "os", py.import("os")?)?;
    let user: String = py.eval("os.getenv('USER') or os.getenv('USERNAME')", None, Some(&locals))?.extract(py)?;

    println!("Hello {}, I'm Python {}", user, version);
    Ok(())
}

使用 Python 绑定的示例库:

以下两个文件将通过 cargo build 进行构建,并会生成一个与 Python 兼容的库。 在 Mac OS 上,您需要将输出文件的名称从 *.dylib 重命名为 *.so。 在 Windows 上,您需要将输出文件的名称从 *.dll 更改为 *.pyd。

注意:

在构建时,python3-sys/build.rs 将在以下位置查找解释器:

  • PYTHON_SYS_EXECUTABLE
  • Python
  • python3 选择第一个可用且与配置的预期版本兼容的解释器(默认情况下,任何 Python 3.X 解释器都可以)。如果需要特定的解释器,可以使用 -i 选项指定。

[dependencies]

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rust

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言