在Ubuntu中,Fortran与Python可以结合使用,主要通过调用Fortran编写的共享库(.so
文件)来实现。以下是一些关键步骤:
首先,确保你的系统上已经安装了Fortran编译器。你可以使用以下命令安装gfortran:
sudo apt update
sudo apt install gfortran
创建一个Fortran源文件,例如example.f90
:
program hello
implicit none
print *, 'Hello from Fortran!'
end program hello
使用gfortran编译这个文件:
gfortran -c example.f90
这会生成一个名为example.o
的目标文件。
将目标文件和其他必要的文件(如.mod
文件)链接成一个共享库:
gfortran -shared -o libexample.so example.o
在Python中,你可以使用ctypes
库来加载和调用Fortran编写的共享库。首先,确保共享库在Python的sys.path
中,然后使用ctypes
加载库并调用函数:
import ctypes
# 加载共享库
libexample = ctypes.CDLL('./libexample.so')
# 调用Fortran函数
libexample.hello()
运行上述Python脚本,你应该会看到输出Hello from Fortran!
。
确保共享库路径正确:在运行Python脚本之前,确保共享库.so
文件在Python解释器可以找到的路径中。你可以通过设置LD_LIBRARY_PATH
环境变量来指定库的搜索路径:
export LD_LIBRARY_PATH=/path/to/your/library:$LD_LIBRARY_PATH
编译器和库的兼容性:确保Fortran编译器和Python解释器以及共享库的版本兼容。
通过以上步骤,你可以在Ubuntu中成功地将Fortran与Python结合使用。这种方法不仅适用于简单的函数调用,还可以扩展到更复杂的数值计算和数据处理任务。