これは非常に初心者の質問ですが、Google でしばらく検索しても解決策が見つかりませんでした。Fortran 77 で記述されたいくつかのルーチンが必要な Eclipse (Linux Mint) を使用して Python コードを作成しています (コードは という名前のファイルにありますfortran_code.f
)。私はf2py
ファイルを取得するために使用しましたfortran_code.so
。このファイルは、Python コード ( ) と同じフォルダーにあります../workspace/python_project/src
。Python コードには以下のみが含まれます。
import fortran_code
a = 10
fortran_code.fortran_subroutine(a)
もう一度、結果は次のとおりです。
Traceback (most recent call last): File
"/home/user/Documents/workspace/python_project/src/Main.py", line 7,
in <module>
import fortran_code ImportError: /home/user/Documents/workspace/python_project/src/fortran_code.so:
undefined symbol: PyCObject_Type
Fortran サブルーチン コードは次のとおりです。
SUBROUTINE fortran_subroutine(a)
REAL*8, intent(in) :: a
REAL*8 b
b=a*2
end subroutine fortran_subroutine
.so ファイル (fortran_code.so) を取得するには、次を使用します。
f2py -c fortran_code.f -m fortran_code
f2py のバージョンは 2 で、Python のバージョンは 2.7.4 です。
この問題を解決するための助けは非常に役に立ちます。
ありがとう!