从其他包导入python模块时遇到问题(pycharm提供未解析的引用)

rob*_*ing 6 python import package importerror pycharm

我不知道pycharm是否与问题有关,或者如果它是我的菜鸟.

这是我的文件夹布局和三个代码文件的屏幕截图:

截图

我在Windows上使用Pycharm,"my_working_directory"是我的工作目录.您可以在屏幕截图中看到mod1.py"from package2.mod2"的下划线表示"未解析的引用".

当我尝试运行mod1.py时,我得到:

C:\Python27\python.exe C:/Users/Robert/PycharmProjects/play/my_working_directory/package1/mod1.py
Traceback (most recent call last):
  File "C:/Users/Robert/PycharmProjects/play/my_working_directory/package1/mod1.py", line 1, in <module>
    from package2.mod2 import SomeClass
ImportError: No module named package2.mod2
Run Code Online (Sandbox Code Playgroud)

当我运行main.py时,我得到:

C:\Python27\python.exe C:/Users/Robert/PycharmProjects/play/my_working_directory/main.py
hi
Run Code Online (Sandbox Code Playgroud)

我不明白为什么一个有效,另一个无效.

主要的问题是pycharm没有给我自动完成,从mod1它无法检测到package2.这是一个很大的问题,因为package1是我的视图包,package2是我的模型或utils或lib包(在大型模型视图控制器中).(例如https://github.com/coto/gae-boilerplate/blob/master/web/handlers.py pycharm没有检测到任何来自lib.?import?语句.(给出未解析的引用).

有谁知道发生了什么?这是导入包的最佳方式吗?我希望能够自动完成吗?

应该通过制作另一个init .py文件将"my_working_directory"变成一个包吗?

Jak*_*yer 2

可能是 C:/Users/Robert/PycharmProjects/play 不在您的计算机上%PYTHON_PATH%