关于在Python开发时一些隐含的坑,就是我们在日常工作时,开发一个框架。明明都是在一个工程目录下,可是在用from xxx import yyy来引或者调用工程其他目录下的文件时,报错。
from utils.config import Config, DRIVER_PATH
ModuleNotFoundError: No module named 'utils.config'
如下所示:我的test_baidu.py文件在test下,在该文件调用utils下的config.py文件时就出错了
分析总结:
原因经过咨询其他公司的大佬们,获悉。原来,在工程如我的autoWebTest下直接创建的t_api.py文件,或者在test下创建的test_sina.py在调用工程autoWebTest下的test目录下的test_baidu.py文件都是不可以直接用from xxx import yyy。
但是如果我在test_sina.py中引用t_api.py是可以正常引用的。
总结就是说,内部引用外部可以正常使用。如果外部引用内部不可以直接引用。那如果想相互引用不受影响应该怎么用呢?在每个目录的文件夹下面添加一个空的__init__.py文件
为什么要添加__init__.py文件,可以参考其他的文章,这里不详细讲解