问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Python 中使用 FORTRAN 怎么搭

发布网友 发布时间:2022-05-11 01:43

我来回答

3个回答

热心网友 时间:2022-05-11 03:12

f2py是numpy自带的一个工具,只要安装了numpy,一般都会安装f2py.exe和f2py.py两个文件.

f2py.exe适合在命令行中使用,而f2py.py则一般在Python代码中使用.

废话少说, 先建立一个testfortran.f90的文件如下:

[plain] view plain copy
!SUBROUTINE
SUBROUTINE ADDSUB(A,B,C,D)
IMPLICIT NONE
DOUBLE PRECISION A,B,C,D
!f2py intent(in) :: A,B
!f2py intent(out) :: C,D
C = A + B
D = A - B
print*, "ADDSUB From Fortran!"
print*, "ADD=",C
print*, "SUB=",D
RETURN
END

注意这两行的代码:

[plain] view plain copy
!f2py intent(in) :: A,B
!f2py intent(out) :: C,D

对于Fortran只是注释,但对于f2py却很重要,相当于"签名".

注意签名的注释前面不能有空格!

当然也可以写成如下的形式:

[plain] view plain copy
Cf2py intent(in) :: A,B
Cf2py intent(out) :: C,D
下面开始编译Fortran代码为python模块,打开CMD窗口,输入如下命令:

[plain] view plain copy
f2py -m testfortran -c testfortran.f90
会在当前目录下生成testfortran.pyd的文件.

下面就可以再python中使用这个模块了:

[python] view plain copy
In [1]: import testfortran

In [2]: print testfortran.__doc__
This mole 'testfortran' is auto-generated with f2py (version:2).
Functions:
c,d = addsub(a,b)
.

In [3]: x=testfortran.addsub(4,9)
ADDSUB From Fortran!
ADD= 13.000
SUB= -5.000
In [4]: x
Out[4]: (13.0, -5.0)

In [5]:

热心网友 时间:2022-05-11 04:30

只能是fortran程序编译为可执行文件,python去调用执行。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
消防验收应具备哪些基本条件 跪求~初一上英语新目标相对开音节单词,绝对开音节单词,重读闭音节... 高校招生计划上对本省招的专业 但招生之友上没有该专业的代码 请问怎 ... 为什么有的学校在招生之友上没有? 招生考试之友上没写出来的专业是不是不能报 违天害理 哈尔滨商业大学江北校区 20个从动物身上的启示 动物标本皮如何处理不会腐烂发臭 埃及的港口有哪些 如何办理工商的信用卡 工商信用卡 工商信用卡? 50岁从未结过婚的单身女人,心里变态吗 古文中50岁还没结婚的女人是什么? 华为畅想8啥时候上市 我已经五十岁了,未婚,该怎么办呢? 华为手机畅享8e屏碎维修 医疗事故鉴定费用怎么算 医疗事故鉴定费用谁付 医疗事故鉴定是怎么收费的 医疗事故处理鉴定收费标准是多少 医疗事故鉴定费用谁出 医疗事故鉴定多少钱 医疗事故鉴定一般要多少钱? 医疗事故鉴定的收费标准是哪样的 医疗事故的鉴定费用标准是什么 医疗事故鉴定收费标准是怎么样的 医疗事故鉴定需要多少数额 医疗鉴定一般要多少钱 上海市青浦区有没有世纪联华超市 上海青浦区世纪联华超市在哪里? 青浦有世纪联华的地方是什么地区 世纪联华 青浦店怎么样 上海青浦区世纪联华几几年几月开门营业的? 世纪联华(青浦店)到虹桥机场怎么走 在上海哪里有卖世纪联华消费卡和smart card? 上海站到青浦区世纪联华怎么去? 在青浦区世纪联华可以坐几路车去青浦区青舟路220号 浦西大型的世纪联华超市在哪 新村路双山路到青浦世纪联华的路线 如何树立自信发言稿50字 有没有什么网站可以免费下载儿童歌曲.带视频的 MTV MV都可以 推荐一下适合做儿童MV的歌曲,最好是能够表达出两小无猜,青梅竹马,天真无邪的感觉的,谢谢 哪里能免费下载高清的儿童歌曲mv 求一篇以“树立必胜信心,建功祖国边疆”为主题的演讲稿,3-5分钟演讲... 儿童歌曲《喝得响亮》有MTV吗? 经典儿童歌曲mtvdvd下载 求几首英语儿童歌曲MV,节奏感比较强的。 哪里能免费下载高清的儿童歌曲mv?