如何在python中使用f2py模块

问题描述 投票:0回答:1

使用f2py时遇到一些麻烦。我已经编译成以下代码到.so文件就好了,它导入我的python代码就好了,但我只是想知道如何使用它。我知道有一个命令文档,但是jus说这个模块没有名为“doc”的属性

Fortran代码:

subroutine Test
implicit none
real, dimension(3600000) :: Alpha,Sigma
open(10, file='Alpha.txt')
read(10, *) Alpha
Sigma = (87.6*2)/((87.6*(sin(Alpha))**2)+(2*cos(Alpha)**2))
end subroutine

Python代码:

import matplotlib.pyplot as plt 
import numpy as np 
import Sigma

print(Sigma._doc_)

错误:

File "/home/tom/Desktop/f2py/Plot.py", line 5, in <module>
    print(Sigma._doc_)
AttributeError: 'module' object has no attribute '_doc_'

我是否必须以某种方式将doc属性输入到原始的fortran代码中?如果是这样,我该怎么办呢?

python fortran f2py
1个回答
0
投票

根据他们的example,看起来你需要在module.subroutine.__doc__上打印。

如果我将文件保存到test1.f90,然后编译它

f2py -c test1.f90 -m test1

然后查询doc字符串。

~$ python
Python 3.6.4 (default, Jan  5 2018, 02:35:40) 
[GCC 7.2.1 20171224] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> import test1
>>> print(test1.test.__doc__)
test()

Wrapper for ``test``.


>>>

这对我来说很好,因为你没有争论到Test

© www.soinside.com 2019 - 2024. All rights reserved.