无法将pip模块与PyO3一起使用

2024-10-03 15:26:40 发布

您现在位置:Python中文网/ 问答频道 /正文

最近,我一直在从事一个项目,涉及生成docx文件。由于Rust的docx支持还很不成熟,我决定通过PyO3使用Python的python-docx模块

以下是我目前的代码:

extern crate pyo3;
use pyo3::prelude::*;

(...)

// Initialize some Python
let gil = Python::acquire_gil();
let py = gil.python();
let docx = PyModule::import(py, "docx")?;

let document = docx.Document();

不幸的是,我遇到了两个相当严重的错误

错误#1:

let docx = PyModule::import(py, "docx")?;
                                   ^ cannot use the `?` operator in a function that returns `std::string::String

错误#2:

let document = docx.Document();
                    ^^^^^^^^ method not found in `&pyo3::prelude::PyModule`

如何解决这些错误

注意:是的,我已确保安装了python-docx。它位于/home/<my username>/.local/lib/python3.8/site-packages


Tags: 文件项目inpyimportuse错误document