ImportError: attempted relative import with no known parent package 报错的解决!
日期: 2021-01-19 分类: 个人收藏 469次阅读
本人在做调用超级鹰API解决点触验证码时,两次出现本报错。在一系列查阅资料及百度后解决,步骤如下:(注意:如果项目目录结构简单且无中文目录,直接使用绝对路径即可解决!!!)
1.项目目录:
2.首先,我想在12306_selenium.py文件中调用chaojiying.py文件下的一个类,出现此报错:
调用方法:(此处使用的相对路径调用!)
既然在调用时出错,也就是说解释器找不到我们想要调用的.py文件,那么我们通过sys.path(sys.path是python的搜索模块的路径集,是一个list)观察一下在路径集中有没有chaojiying.py文件的父级目录即:点触验证码的绝对路径!
结果出人意料,路径集中是有chaojiying.py文件的父级目录的路径的,那么我们改一下调用语句,直接如下即可:
到此,此报错解决!
3.然后,我想在12306_selenium.py文件中调用password中的三个变量CA,CP,SI,出现此报错:
调用方法:(此处使用的相对路径调用!)
思路同上,通过sys.path观察路径集,发现里面没有password.py的父级目录。既然没有,我们就往sys.path里面添加即可:
到此,路径集里有了需要调用的password.py文件的父级目录,那么我们改一下调用语句如下即可:
注意:sys.path.append()添加相关的路径,但在退出python环境后自己添加的路径就会自动消失!
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:攻破bug python
精华推荐