logo
当前位置:首 页 > 编程技术 >后端开发 >python > 查看文章

SciPy 是一个开源的 Python 算法库和数学工具包。SciPy 包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。

10 月 25 日,SciPy 团队成员 Ralf Gommers 在 Python 官方邮件组发文宣布 SciPy 1.0 终于发布了。

Ralf 称,「很高兴宣布 SciPy 1.0 的发布,自从 0.1 版面世 16 年后,1.0 版姗姗来迟。这是一次漫长而富有成效的旅程,期待在未来有更多令人激动的特性。」

为什么现在才发布 1.0 版呢?

Ralf 认为版本号应当体现出项目的成熟程度,SciPy 是一个成熟且稳定的库,已经在生产环境长期大量使用很久了。从这个角度来说,1.0 版来晚了。

最近 SciPy 已经达成一些重要的项目目的,技术上方面比如:Windows wheels 和持续集成。组织方面有管理结构、代码准则和路线图。

Ralf 还表示,

我们中很多人都有点完美主义,所以不情愿称某东西是 1.0 了,因为这样或许就暗示「已做完」或「我们对此 100% 满意」。虽然很多开源项目都这样,但我们承认自己项目并不完美,总有些边边角角有灰尘的。

虽然我们有如此想法,但对用户来说,SciPy 极为实用,有着高于平均水平的高质量代码和文档,稳定性和向后兼容性均很好。

SciPy 的重要里程碑

  • 2001 年:第一版 SciPy 发布;
  • 2005 年:过渡到 NumPy;
  • 2007 年:scikits 的诞生;
  • 2008 年:scipy.spatial 模块以及首个 Cython 代码的增加;
  • 2010 年:进入 6 个月发布周期模式;
  • 2011 年:SciPy 迁移到 GitHub;
  • 2011 年:支持 Python 3;
  • 2012 年:新增稀疏图(sparse graph)模块,以及统一优化接口;
  • 2012 年:移除 scipy.maxentropy;
  • 2013 年:支持用 TravisCI 做持续集成;
  • 2015 年:新增用于 BLAS/LAPACK 的 Cython 接口,以及一个基准套装;
  • 2017 年:新增一个统一的 C API:scipy.LowLevelCallable; 移除 scipy.weave;
  • 2017 年(10月):SciPy 1.0 发布;

1.0 版部分新亮点

  • 首次可用于 PyPI,持续集成已在 Windows 和 OS X 平台可用了,Linux 暂不行;
  • 一套新的 ODE 求解器(solver),以及统一的接口:scipy.integrate.solve_ivp;
  • 两个新的信赖域(trust region)优化器,一个新的线性编程方法,对比先前的 scipy.optimize,性能有了大改进;
  • 诸多新的 BLAS 和 LAPACK 函数;
  • 更多信息,请参见:https://mail.python.org/pipermail/scipy-user/2017-October/037357.html

1.0 版的参与贡献人数达到 121 位。

下载:https://www.scipy.org/scipylib/download.html

说说梦想,谈谈感悟 ,聊聊技术,有啥要说的来github留言吧 https://github.com/cjx2328

—— 陈 建鑫

陈建鑫
footer logo
未经许可请勿自行使用、转载、修改、复制、发行、出售、发表或以其它方式利用本网站之内容。站长联系:cjx2328#126.com(修改#为@)
Copyright ©ziao Studio All Rights Reserved. E-mail:cjx2328#126.com(#号改成@) 沪ICP备14052271号-3