PyCharm 导入普通目录下的模块时报错:ImportError: attempted relative import with no known parent package
时间: 2023-10-12 11:08:31 浏览: 137
这个错误通常是由于 PyCharm 没有正确设置源文件的根目录所致。可以尝试以下几个解决方法:
1. 在 PyCharm 的设置中设置源文件的根目录。在 PyCharm 中,点击 File -> Settings,在左侧菜单中选择 Project: your_project_name,然后在右侧选择 Project Structure。在 Project Structure 中,点击 Add Content Root,选择项目的根目录,点击 OK 即可。
2. 在 PyCharm 中设置代码的根目录。在 PyCharm 中,点击 File -> Settings,在左侧菜单中选择 Editor -> File Types,然后在右侧选择 Text。在 Text 中,找到 Python Files,将其打开,并在底部的 Registered Patterns 中添加你的代码的根目录,例如 `src/*`。
3. 在代码中使用绝对导入方式导入模块,例如 `from package.module import name`。
希望这些方法能够帮助你解决问题。
相关问题
pycharm:ImportError: attempted relative import with no known parent package
这个错误通常是由于相对导入的问题导致的。相对导入是指在Python中使用相对路径导入模块,而不是使用绝对路径导入模块。在Python中,相对导入使用点号(.)表示当前目录,使用双点号(..)表示上级目录。如果你的代码中使用了相对导入,但是没有指定父级包,就会出现这个错误。
解决这个问题的方法有两种:
1. 将相对导入改为绝对导入,即使用完整的包名来导入模块。
2. 将当前目录添加到Python的搜索路径中,这样Python就能够找到相对导入的模块。
下面是两种解决方法的具体实现:
1. 将相对导入改为绝对导入
```python
# 将相对导入改为绝对导入,即使用完整的包名来导入模块
from package.string_helper import gen_vcode
```
2. 将当前目录添加到Python的搜索路径中
```python
# 将当前目录添加到Python的搜索路径中
import sys
sys.path.append('.')
from string_helper import gen_vcode
```
pycharm中报错ImportError: attempted relative import with no known parent package怎么解决
这个错误通常是由于相对导入时没有明确指定父包导致的。您可以尝试以下解决方法:
1. 将相对导入改为绝对导入。
2. 在你的代码中添加一个导入路径,例如:
```python
import sys
import os
sys.path.append(os.path.abspath('..'))
```
这将添加上级目录到 Python 模块搜索路径中。
3. 在你的项目根目录下创建一个空的 `__init__.py` 文件,以将目录转换为 Python 包。
希望这些方法能够帮助您解决问题。
阅读全文