Pycharm 中用于在父目录中导入模块的未解析引用

Unresolved reference in Pycharm for importing modules in parent directory

有一个类似的问题,但不是我 运行 的问题所以我们开始:

我的目录结构:
├── Pycharm项目
____ ├── 我的项目
_______ ├── main.py
_______ ├── ...
___ ├── 工具
_______ ├── web.py

导入我使用的 web.py 函数

sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from Tools.web import *

它在 Pycharm 和 Idle 中工作,但是 Pycharm 中的代码分析显示工具及其功能与 'unresolved references' 相同。我该如何解决这个问题?

我已经试过了:
1. init.py 各级文件夹.
2. 添加tools文件夹到Project Structure,标记为Source文件夹(蓝色)

我建议将以下内容翻译成您的条款:将名为 my_pycharm.pth 的文件放入 /Lib/site-packages 中,并使用以下行。

 <drive>:/path/to/PycharmProjects

这实质上是将 /PycharmProjects 的 内容 附加到 /site-packages 的内容。换句话说,当 import 在 /site-packages 中搜索模块时,它也会搜索 /PycharmProjects。 (我对每个安装的 Python 版本都这样做。)

然后通过添加 init.py 使 /PycharmProjects 中的每个项目成为一个合适的包。

现在,例如,main.py 可以有

 from Tools import web

它应该可以正常工作。

如果您与其他人共享您的代码,他们只需将其放入他们的 站点包中。

这里列出了一个更简单的答案,供以后使用此方法的任何人使用:

https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000646984--Solved-Warnings-import-local-package-Unresolved-references-inspection

在底部:

  1. Go to the settings "Ctrl+Alt+S" and select the next options:

  2. Select the folder which want to convert into python sources in my case "./src" and tap in Source tag (Mark as..) then it added on the left panel also tap Apply or Ok.