pycharm中的项目中可以包含package、目录(目录名可以有空格)、等等

目录的某个包中的某个py文件要调用另一个py文件中的函数,首先要将目录设置为source root,这样才能从包中至上至上正确引入函数,否则怎么引入都出错:

SystemError: Parent module '' not loaded, cannot perform relative import

一般开发时候,我们使用sys.path.insert()方法,将需要引入的包的目录加入进来,这样程序在执行的过程中,不会出现问题。但是,pycharm本身是不知道的,pycharm依旧会根据本身的相对路径去寻找依赖包,找不到就会报错:

手动添加确实是一种方法,但是有一种更简单的方法,就是通过简单地告诉pycharm你要添加src文件夹作为源代码根,然后将源根添加到你的python路径。

这种方式,我们不必写额外代码,只需要添加src作为源内容根目录:

前往设置,选择Build,Execution,Development > Console > Python Console,勾选Add source roots to PYTHONPATH选项,并应用激活。

现在,所有依赖都解决了。

这样,我们可以添加任何想要的源代码,如果再次将其标记为源代码,那么将收到错误。