理想情况下,使用importlib导入包含句点的脚本(例如program_1.4.py)的正确方法是什么?
(现在不推荐使用imp模块,此答案不再适用:当filename包含句点时如何引用python包。)
在仔细研究了CPython并回到其他解决方案(尤其是Import any python source file。(Python 3.3+))之后,我意识到我需要将完整路径传递给模块。这是跨平台,与呼叫位置无关的解决方案:
“”
import os, sys # For running from Notepad++ shortcut, etc
import importlib.machinery
program_1_4 = importlib.machinery.SourceFileLoader('program_1.4', os.path.join(sys.path[0], 'program_1.4.py')).load_module()
print(program_1_4)
program_1_4.main()
“”
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句