[autoreload of R17_Plot_profiles failed: Traceback (most recent call last):
File "/home/jdrevon/anaconda3/lib/python3.7/site-packages/IPython/extensions/autoreload.py", line 244, in check
superreload(m, reload, self.old_objects)
File "/home/jdrevon/anaconda3/lib/python3.7/site-packages/IPython/extensions/autoreload.py", line 378, in superreload
module = reload(module)
File "/home/jdrevon/anaconda3/lib/python3.7/imp.py", line 314, in reload
return importlib.reload(module)
File "/home/jdrevon/anaconda3/lib/python3.7/importlib/__init__.py", line 168, in reload
raise ModuleNotFoundError(f"spec not found for the module {name!r}", name=name)
ModuleNotFoundError: spec not found for the module 'R17_Plot_profiles'
]
Run Code Online (Sandbox Code Playgroud)
当我修改部分代码并按 F9 执行其中的某些部分时,Spyder 上的 Python 3.7 中会出现此问题。即使我执行加载每个子 python .py 代码的主 python 文件,我也会收到此错误消息。但是,它不会停止代码运行,但文件不会保存所做的修改。自从我导入“R17_Plot_profiles.py”python 文件以来,这是第一次发生这种情况。
但是,在我执行主配置文件的情况下,我有上一条消息,但也有以下消息:
Reloaded modules: reconstruct, R2_Spice_Kernels, R4_Offset_Correction, R5_State_Vectors_twoway_v2, R6_Foot_Print, R7_Framework_Conversion,
R8_BendAng_ImpParam_up, R8_BendAng_ImpParam_dn, R9_Avg_BendAng_ImpParam, R10_Altitude_above_Ellipsoid, R11_Refractivity_and_Bending_Radius_v2,
R12a_Electron_Density_up, R12b_Electron_Density_dn, R12_Electron_Density_avg, R13_Neutral_Number_Density,
R14_Pressure_and_Temperature, R16_Errors, R17_Plot_profiles,
R3_Read_L2_Data_v2
Run Code Online (Sandbox Code Playgroud)
所以我不知道如何解决自动重新加载问题。我尝试将我的 IPython 版本降级到 7.5,就像一些人尝试过的那样并取得了成功,但对我来说这并没有改变任何东西。
编辑:值得注意的是,如果我重新启动内核,第一次执行不会显示错误消息,直到我直接修改 python 代码。
昨天做了一些修改,似乎已经解决了。由于错误的发生在某些时候开始是随机的,我不确定 100%,但它也许可以解决问题。
问题可能来自于os.chdir函数的使用,我通过指定保存图形的整个路径来替换它,直到转到使用的路径os.chdir,然后将我的图形保存在其中。
它可能会产生一些路径和存储库的冲突来查找不再位于脚本当前工作的路径中的 python 脚本,因此无法找到它以保存修改。
如果错误在某个时候再次出现,我会通知您,但现在经过一些尝试后,错误不再出现。