#python #environment #pip

py_env

Python 命令的包装器,可轻松安装依赖项并在可选的非持久环境中运行 Python 脚本

3 个稳定版本

2.0.2 2024 年 2 月 24 日
1.2.0 2024 年 4 月 4 日
1.1.2 2024 年 2 月 20 日
1.0.1 2024 年 2 月 20 日

文件系统 中排名第 282

每月下载量 29

自定义许可协议

12KB
178

py_env

Rust 库,可以在指定的环境路径下运行 Python 脚本和安装依赖项。

目录

安装

只需将库作为依赖项添加到您的 Cargo.toml 中,如下所示,然后通过使用说明调用。

[dependencies]
py_env = "1.2.0"

用法

创建 Python 环境

此库使用非常简单的语法来运行 Python 脚本。要创建 Python 环境,只需运行 PyEnv::at(PathBuf)

use py_env::PyEnv;

let env = PyEnv::at("./py_test");

运行任意代码

use py_env::PyEnv;

PyEnv::at("./py_test")
    .execute("print('hello world')")
    .expect("Failed to execute code");

安装 Python 依赖项

以下代码将 numpy 安装到 ./py_test 目录的 site-packages 中,并在执行代码中使用它。

use py_env::PyEnv;

PyEnv::at("./py_test")
    .install("numpy")
    .expect("Failed to install numpy")
    .execute("a = numpy.arange(15).reshape(3, 5); print(a.shape)")
    .expect("Failed to execute code");

创建非持久环境

以下代码在运行完成后从磁盘删除 Python 环境。

use py_env::PyEnv;

PyEnv::at("./py_test")
    .persistent(false)
    .install("numpy").expect("Failed to install numpy");

使用 try_ 解包器

try_install()try_execute() 解包器函数在从其内部 install()execute() 函数返回错误时引发恐慌。这些函数只会失败,如果你没有安装 Python,我们提供了这些函数以方便起见,但警告您不要在生产代码中使用它们,而应手动处理错误。

use py_env::PyEnv;

PyEnv::at("./py_test")
    .persistent(false)
    .try_install("numpy")
    .try_execute("a = numpy.arange(15).reshape(3, 5); print(a.shape)");

贡献

欢迎提交问题,并将在我看到时进行审查。代码在 MIT 许可证下发布(见下文),因此,如果您想通过添加您想要实现的功能来分叉此存储库,将非常感谢。

许可协议

此代码受 MIT 许可协议保护。

无运行时依赖