NumPy 2.0.0 现已发布
NumPy 2.0.0, 自 2006 年以来的首个主要版本,经过 11 个月的开发,现已正式发布。此版本包含了来自 212 位贡献者的 1078 个 PR,引入了大量新功能及对 Python 和 C API 的更改。
新功能与改进
- 引入新的可变长度字符串 dtype, StringDType, 及高性能字符串操作 ufunc。
- numpy.fft 函数支持 float32 和 longdouble。
- 主 numpy 命名空间支持数组 API 标准。
- 排序函数通过使用 Intel x86-simd-sort 和 Google Highway 库加速。
- MacOS 加速支持和 binary wheels,提升线性代数运算性能。
- numpy.char 固定长度字符串操作通过 ufuncs 实现加速。
- 新的 tracing 和 introspection API, opt_func_info。
- numpy.save 使用 pickle 协议版本 4,支持大于 4GB 的 pickle 对象。
API 改进
NumPy 2.0.0 对 Python 和 C API 进行了重大改进,包括明确的公共和私有 API 划分,规范的 dtype 名称,以及新的 C API 用于创建自定义 dtypes。
行为改进
通过采用 NEP 50,改进了 type promotion 行为。Windows 上的默认整数类型更改为 int64,数组的最大维数从 32 更改为 64。
文档与结构
参考指南导航得到显著改进,NumPy 模块结构文档化。内部结构也进行了调整,包括将代码从 C 迁移到 C++。
向后兼容性
注意,此版本包含对 Python 和 C API 的破坏性更改,以及对 NumPy ABI 的更改。建议依赖 NumPy ABI 的下游包针对 NumPy 2.0 构建新版本。
支持的 Python 版本
此版本支持 Python 3.9-3.12。
更多详情,请查看 发布说明。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。