from .models import * ImportError: attempted relative import with no known parent package
时间: 2023-12-31 12:24:52 浏览: 135
解决pip安装opencv遇到的from .cv2 import * ImportError: DLL load failed: 找不到指定的模块>>>问题(亲测)
这个报错是由于相对路径导入出现问题导致的。在Python中,使用相对路径导入时,需要确保当前模块是一个已知的父程序包。如果当前模块不是一个已知的父程序包,就会出现这个错误。
解决这个问题的方法有两种:
1. 使用绝对路径导入:可以直接使用绝对路径导入需要的模块,而不使用相对路径。例如,如果要导入一个名为models的模块,可以使用以下语句:
```python
from package_name.models import *
```
其中,package_name是模块所在的包的名称。
2. 将当前模块设置为已知的父程序包:可以通过修改Python的搜索路径来将当前模块设置为已知的父程序包。具体操作如下:
- 在当前模块的顶部添加以下代码:
```python
import sys
sys.path.append("..")
```
这将把当前模块的父目录添加到Python的搜索路径中。
- 然后,可以使用相对路径导入需要的模块,例如:
```python
from .models import *
```
请注意,第二种方法只适用于当前模块是一个已知的父程序包的情况。
阅读全文