创建一个rust写的python库

1.安装cargo

windows上安装rustup-init.exe
https://win.rustup.rs/x86_64

linux

复制代码
sudo agt-get install cargo

2.安装maturin

复制代码
pip install maturin

3.创建项目

复制代码
mkdir my1stplugin
cd my1stplugin
maturin init

创建时选择pyo3,然后就会产生若个项目文件

其中src里面有个lib.rs给出了示例

4.编译库安装到当前python环境(以示例lib.rs为基准)

复制代码
maturin develop

5.编写测试py脚本

复制代码
import my1stplunin

if __name__ == "__main__":
    res = my1stplunin.sum_as_string(11,2)
    print(res) # 结果13

--------报错处理---------------------------------------

E+00000.030: Error while enumerating installed packages. ....

重新安装importlib-metadata

复制代码
pip install --upgrade importlib_metadata
相关推荐
Victor3565 小时前
https://editor.csdn.net/md/?articleId=139321571&spm=1011.2415.3001.9698
后端
Victor3565 小时前
Hibernate(89)如何在压力测试中使用Hibernate?
后端
灰子学技术7 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰7 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码8 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚8 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂8 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1368 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
Gogo8168 小时前
BigInt 与 Number 的爱恨情仇,为何大佬都劝你“能用 Number 就别用 BigInt”?
后端
fuquxiaoguang8 小时前
深入浅出:使用MDC构建SpringBoot全链路请求追踪系统
java·spring boot·后端·调用链分析