F2PY 用户指南和参考手册#

F2PY—— Fortran 到 Python 接口生成器 —— 工具的目的是提供 Python 和 Fortran 之间的连接。F2PY 作为 NumPy (numpy.f2py) 的一部分分发,安装后也可以作为独立的命令行工具使用。它最初由 Pearu Peterson 创建,更早的更新日志可以在历史参考中找到。

F2PY 促进了创建/构建原生 Python C/API 扩展模块,这使得

  • 可以调用 Fortran 77/90/95 外部子程序和 Fortran 90/95 模块子程序以及 C 函数;

  • 可以从 Python 访问 Fortran 77 COMMON 块和 Fortran 90/95 模块数据,包括可分配数组。

从 Python。

注意

Fortran 77 的功能基本完善,F2PY 中对现代 Fortran 的支持也越来越多。大多数 iso_c_binding 接口可以通过 f2py 自动编译为原生扩展模块。欢迎提交错误报告!

F2PY 可以作为命令行工具 f2py 使用,也可以作为 Python 模块 numpy.f2py 使用。虽然我们尝试将命令行工具作为 NumPy 设置的一部分提供,但某些平台(如 Windows)难以可靠地将可执行文件放入 PATH 中。如果您的系统中没有 f2py 命令,您可能需要将其作为模块运行。

python -m numpy.f2py

如果您系统中有多个安装了 NumPy 的 Python(在虚拟环境之外),并且您想确保选择特定版本的 Python/F2PY,那么使用 python -m 调用也是一个好习惯。

如果您不带任何参数运行 f2py,并且结尾的 numpy Version 行与您运行 python -m numpy.f2py 打印的 NumPy 版本匹配,那么您可以使用较短的版本。如果不匹配,或者您无法运行 f2py,则应将本指南中提到的所有对 f2py 的调用替换为较长版本。