Loading... ## 前言 Python中为了加速计算可以有多种方式, 常见如将串行代码改为并行, 或者调用基于c/c++等语言实现的封装库. 这里分别记录使用过的方法, 并给出示例. ## joblib 这是非常好用的Python并行计算库, 简化了个人实现的繁琐过程. 官方文档: https://joblib.readthedocs.io/en/stable/ 简单示例 ```python from math import sqrt from joblib import Parallel, delayed result = Parallel(n_jobs=-1)(\ # 此处整体会作为生成器 delayed(sqrt)(i ** 2) for i in range(100000) ) ``` 高级用法: 显示进度条 * 结合tqdm * tqdm对象因为无法序列化, 因此无法作为参数传入到delayed函数中(除非n_jobs=1); 因此如下的示例中, tqdm直接封装参数成为唯一的简单实现方式 ```python from math import sqrt from joblib import Parallel, delayed from tqdm import tqdm result = Parallel(n_jobs=-1)(\ # 此处整体会作为生成器 delayed(sqrt)(i ** 2) for i in tqdm(range(100000), desc='progress') ) ``` <div class="hideContent">该部分仅登录用户可见</div> THE END 本文作者:将夜 本文链接:http://zoe.red/2024/380.html 版权声明:本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。 最后修改:2024 年 03 月 30 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏