解决pycharm在同目录下import,pycharm会报错,但实际可以正常运行的错误

1. 问题描述

假如我们的目录结构是这样:

项目名称是HelloWorld,在项目主目录下面新建一个文件夹test_dir,接着在HelloWorld/test_dir目录下面新建两个文件: HelloWorld/test_dir/hello1.pyHelloWorld/test_dir/hello2.py

hello1.py中插入如下代码:

1
2
3
4
import hello2 as h2

print(h2.hello_world())
print(h2.nihao())

hello2.py中插入如下代码:

1
2
3
4
5
def nihao():
return 'nihao'

def hello_world():
return 'hello world'

此时,会发现在hello1.py中一直红线提示No module named hello2

但是如果我们运行hello.py发现是能够正常输出结果的。

2. 解决方法

在左侧工程目录树中,选中test_dir,右键,然后选择 Mark directory as,再选择source root,然后就会发现先前的红线错误提示已经没有了。

3. More…

如果我们是在当前工程主目录下面新建两个文件HelloWorld/hello1.pyHelloWorld/hello2.py,两个.py文件的代码内容和之前一样,这时候却又不会出现No module named hello2这种错误了。

参考文章

Donate comment here