如果在python3子文件夹中工作,如何从主文件夹导入file.py
我的结构如下:如果在python3子文件夹中工作,如何从主文件夹导入file.py,python,python-3.x,import,python-import,Python,Python 3.x,Import,Python Import,我的结构如下: /mainfolder file.py //subfolder test.py 我正试图在test.py中导入file.py。因为某种原因,我就是不能 我试过了 from .file import * 返回: Traceback (most recent call last): ModuleNotFoundError: No module named '__main__.file'; '__main__' is not a package 还尝试将路径添加到
/mainfolder
file.py
//subfolder
test.py
我正试图在test.py
中导入file.py
。因为某种原因,我就是不能
我试过了
from .file import *
返回:
Traceback (most recent call last):
ModuleNotFoundError: No module named '__main__.file'; '__main__' is not a package
还尝试将路径添加到sys.path:
import sys
import os
sys.path.extend([os.getcwd()])
也不起作用您使用的是什么IDE?我将Pycharm社区IDE与Python3一起使用,它与文件导入的
或文件导入的功能一起使用(我想发表评论,但我不能,因为我还没有50%的声誉)您使用的IDE是什么?我将Pycharm社区IDE与Python3一起使用,它与文件导入的或文件导入的功能一起工作
(我想发表评论,但我不能,因为我还没有50%的声誉)看起来您正在使用python test.py
运行test.py
,因此test
模块被视为顶级模块
如果不是通过添加\uuuu init\uuuuu.py
文件,则应首先使文件夹成为Python包:
/mainfolder
__init__.py
file.py
/subfolder
__init__.py
test.py
然后,您可以将外部main文件夹
附加到sys.path
:
import sys
import os
sys.path.append(os.path.join(os.getcwd(), '..'))
之后,从文件导入someobject
而不进行相对导入。警惕外卡进口
有关当前方法不起作用的原因的详细信息,请参阅和。看起来您正在使用python test.py
运行test.py
,因此,test
模块被视为顶级模块
如果不是通过添加\uuuu init\uuuuu.py
文件,则应首先使文件夹成为Python包:
/mainfolder
__init__.py
file.py
/subfolder
__init__.py
test.py
然后,您可以将外部main文件夹
附加到sys.path
:
import sys
import os
sys.path.append(os.path.join(os.getcwd(), '..'))
之后,从文件导入someobject
而不进行相对导入。警惕外卡进口
有关当前方法不起作用的原因,请参阅和。旁注:您应该使用包而不是文件夹。旁注:您应该使用包而不是文件夹。假设我在//子文件夹中有一个test2.py,并且test.py从文件导入*开始,我如何在test2.py中导入test.py?放弃导入*
。明确指定要导入的内容。如果子文件夹
是一个子包,那么从主文件夹导入test
或。子文件夹导入测试
应该是正确的假设我在//子文件夹中有一个test2.py,并且test.py从文件导入*开始,我如何在test2.py中导入test.py?放弃导入*
。明确指定要导入的内容。如果子文件夹
是子包,则导入.test
或从主文件夹导入测试
应该可以