当我尝试导入我制作的模块时,未找到模块错误

2024-06-02 06:54:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试将我制作的myPackage的myModule导入main。 目录结构如下所示

#Directory structure
test02
└myPackage
│     └myModule.py
│     └__init__.py
└myView
      └main.py

但它有ModuleNotFoundError,比如我附加的屏幕截图 enter image description here

#main 
from myPackage import myModule

myModule.printTest()
#myModule
def printTest():
    print('test')

我知道一个解决方案,那就是我自己输入路径 enter image description here

#main 
import sys
sys.path.insert(0, '/VScode/vscode_python/test02/')
from myPackage import myModule

myModule.printTest()
#myModule
def printTest():
    print('test')

但我认为这不是一种明智的方式

我想知道是否有办法设置vs代码,以便自动添加路径


2条回答

您可以将“粘贴myModule”复制到与main.py相同的位置。并简单地使用:

import myModule

或者复制粘贴myPackage到前面提到的位置。和使用:

from myPackage import myModule

您的问题是因为MyModule.py与main.py不在同一文件夹中

或者必须将它们放在同一文件夹中,或者可以在sys.path变量中添加MyModule.py的路径:

import os,sys,inspect
currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
parentdir = os.path.dirname(currentdir)
print(sys.path)
sys.path.insert(0,parentdir+'\\MyPackage')
print(sys.path)

然后导入MyModule

相关问题 更多 >