看看我的文件结构:
main/
main.py
__init__.py
mysql/
read.py
__init__.py
conf/
mysql.py
loc.py
__init__.py
conf/mysql.py
包含mysql服务器的信息(端口,主机名等)
read.py
用于通过连接到conf/mysql.py
中指定的服务器从MySQL数据库获取和读取值。
我想要实现的是让read.py
导入conf/mysql.py
,所以我尝试了:
from conf import mysql
import main.conf.mysql
这两个都不起作用。它给了我ImportError: No Module Name 'main'
和ImportError: No Module Named 'conf'
,导入conf/mysql.py
仅在main.py
中起作用
我知道可以附加到sys.path
,但是出于某些原因,我不想这样做。
是否有解决此问题的解决方案?在此先感谢您,并为这个复杂的问题感到抱歉。
答案 0 :(得分:1)
由于main
目录是项目的根目录,因此绝对导入中不应包含main
:
from conf import mysql
或使用relative import,您可以执行以下操作:
from ..conf import mysql