使用本地依赖项时出现ModuleNotFoundError

时间:2019-12-09 19:51:08

标签: google-cloud-functions google-cloud-source-repos

该仓库可以在我的机器上运行,但不能在gcloud上运行。

回购协议的结构(在Google Cloud Source Repo上):

project/
├── localdep.py
└── mylocalpackage/
    └── main.py

在main.py中:

import localdep

但是我收到以下错误: ModuleNotFoundError: No module named 'localdep'

我在做什么错?!在我的机器上的Pycharm上运行此程序没有问题,但是当我推送到gcloud时...

1 个答案:

答案 0 :(得分:1)

正确的结构应该是使main.py位于顶层,而其他文件位于嵌套文件夹中。您可以看一下有关Structuring Your Project的内容。

此外,我同时尝试了from ..package import localdepfrom ... import localdep以及其他类似ImportError: attempted relative import with no known parent package的方法,但是我收到了ValueError: attempted relative import beyond top-level package<table> <thead> <tr> <th>Header1</th> <th>Header2</th> <th>Header3</th> <th>Header4</th> </tr> </thead> <tbody> <tr> <td>Data1</td> <td>Data2</td> <td>Data3</td> <td>Data4</td> </tr> <tr> <td>Data11</td> <td>Data22</td> <td>Data33</td> <td>Data44</td> </tr> <tr> <td>Data111</td> <td>Data222</td> <td>Data333</td> <td>Data444</td> </tr> </tbody> </table>

值得重新考虑您的项目结构。