ModuleNotFoundError:尽管模块确实存在,但没有名为X的模块

时间:2019-10-10 05:10:54

标签: python-3.x

我在Python中遇到一个非常奇怪的错误。

python main1.py                                                                                 
Traceback (most recent call last):                                                                
  File "main1.py", line 1, in <module>                                                            
    from sfr import hello                                                             
  File "C:\sfr\hello.py", line 1, in <module>                          
    from constants1 import OBJECT_NAME                                                 
ModuleNotFoundError: No module named 'constants1' 

我的main1.py看起来像这样

from sfr import hello                                                                                                                                   
print('Hello World')    

输入sfr \ hello.py

from constants1 import OBJECT_NAME  

输入sfr \ constants1.py

OBJECT_NAME = 'salesforce_object_name'

我无法理解为什么我没有得到名为constants1的模块? constants1.py位于sfr文件夹

2 个答案:

答案 0 :(得分:0)

由于您是从父目录(sfr外部)运行main1.py文件,因此导入路径应从基础目录开始。就是

from sfr.constants1 import OBJECT_NAME

答案 1 :(得分:0)

您可能需要从项目的根路径进行导入。如果sfr是根级别的软件包,则您的声明应为:

from sfr.constants1 import OBJECT_NAME