【发布时间】:2020-06-30 13:06:09
【问题描述】:
问题: 我想将一个模块(名称:Ex3.2_myModule)导入一个文件(名称:Ex3.2_Test.py)。它们在同一个目录中。为此,我尝试了在有关该主题的其他几个讨论中提出的几个选项(即屏幕截图)(即Discussion 1 和Discussion 2)。它们都不起作用。
截图:1:https://i.stack.imgur.com/GnFQg.png
问题:如何在不更改模块名称的情况下导入此模块?
代码:
Ex3.2_Test.py
# 1
import Ex3.2_myModule as mm
#2
mm = __import__("Ex3.2_myModule")
#3
import importlib
mod = importlib.import_module("Ex3.2_myModule")
mm.helloWorld()
Ex3.2_myModule.py
def helloWorld():
print("Hello, World")
解决方案: Discussion 2 中提出的解决方案毕竟有效。非常感谢@a_guest 指出!
【问题讨论】:
-
能否请您在帖子中提供代码,而不是在屏幕截图中。
-
“将模块导入文件”是什么意思?如果您打算从文件导入模块,则必须更改文件名,或使用
importlib模块。import语句将.视为将包名称与包含的模块名称分开,而不是作为单个模块名称的一部分。 -
@tjallo:感谢您的意见!
-
@chepner:可能是一个愚蠢的问题,但 Ex3.2_Test.py 不是我导入模块的文件吗?
-
这能回答你的问题吗? How to import a module given the full path?
标签: python python-import