先贴出运行错误的问题:
找到出错代码处:
(1)发现该行代码是灰色的,但并非注释代码,查阅知“这是PyCharm自带的一种检测功能,亮的证明是被引用过得,灰色的没有被程序引用,这样就能筛选出哪些定义是冗余无价值的”。(参考https://blog.csdn.net/The_Time_Runner/article/details/84316843)
解决方法: 鼠标移动到这行代码,点击出现的黄色小灯泡,如下图所示,依次点击Optimize imports--Suppress for statement,结果会在该行代码前增加一行注释代码“ # noinspection PyUnresolvedReferences ”,且该行代码被点亮。
(2)上述方式只是点亮了灰色代码行,并未解决代码运行结果的问题,查阅后怀疑是依赖库版本问题,通过cmd窗口查看依赖库信息:conda search package_name --info(参考https://blog.csdn.net/qq_41683065/article/details/99710373),输入以下查询命令
conda search mpi4py --info
结果:查不到
根据提示到官网(https://anaconda.org)的搜索框查,打开对应mpi4py版本的页面(https://anaconda.org/intel/mpi4py),Home的链接打不开(试了搜索其他包,在Home页面可以找到依赖库的版本要求信息),后在Documentation页面下找到Installation--Requirements(https://mpi4py.readthedocs.io/en/stable/install.html#requirements)这里只能看出来跟MPI和Python的要求,我电脑安装的Python版本是符合要求的,就只能怀疑MPI的问题了。
(3)本机之前是安装了MPI的,但版本不是最新的,最后在微软官网(https://docs.microsoft.com/en-us/message-passing-interface/microsoft-mpi)下载并重装了最新版的MPI(msmpisetup.exe),问题解决了!
参照以下教程中11.2的测试文件: