gpt4 book ai didi

python-3.x - 尽管编译成功,f2py 仍未正确导入

转载 作者:行者123 更新时间:2023-12-02 00:05:07 27 4
gpt4 key购买 nike

我正在使用 f2py 成功编译我的 Fortran 子例程。但是,会创建一个文件夹以及一个 pyd 文件。

如果我没有将创建的 pyd 文件放在生成的文件夹中,我会收到此错误

ImportError:DLL 加载失败:找不到指定的模块。

如果我将生成的 .pyd 文件放在生成的文件夹中,我的 python 脚本将运行,并且导入似乎有效。但是,如果我运行 print(energy_f2py.__doc__) None 是输出,当我尝试使用子例程时,我得到一个错误 AttributeError: module 'energy_f2py ' 没有属性 'potential_3'

potential_3energy_f2py.f90 中的子程序 的名称

我也曾尝试将 energy_f2py.f90 制作成包含子例程的模块,但结果没有差异。

这是 energy_f2py.cp36-win_amd64.pyd 生成的 pyd 文件。我在 Pycharm(Windows 10 64 位)中使用命令行来编译 Fortran 文件,使用

  1. f2py -c -m energy_f2py energy_f2py.f90

  2. python -m numpy.f2py -c -m energy_f2py energy_f2py.f90

同样的事情发生了。

在我看来,pyd 文件和文件夹都已创建,这似乎很奇怪,请参见下图 enter image description here

我卡在这个点上了……似乎已经完成了 95% 的工作……

最后,this other post有一个解决方案说将 Python 和 Fortran 模块命名为不同的名称。我试过了,也没有什么不同。

最佳答案

我找到的最佳解决方案是对我的硬盘进行分区并安装 Linux。我选择使用 Lubuntu,但你可以使用任何东西。

在 Linux 上一切正常。

关于python-3.x - 尽管编译成功,f2py 仍未正确导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60898233/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com