我最近在Pycharm内的GAE标准项目中从google.cloud.pubsub_v1调用的types.py中遇到了psutils的导入错误。我搞砸了一天试图找到它,但没有去。 python中的psutil导入是从终端和控制台以及vanilla python项目运行的,而不是来自GAE项目。为了加倍对此我做了两个基本测试,如下所示:两者都使用相同的virtualenv ......
标准香草Python项目:
main.py包含
import psutil
def x():
print "hello world"
if __name__ == "__main__":
x()
Google App Engine项目 - main.py包含
import webapp2
import psutil
class MainHandler(webapp2.RequestHandler):
def get(self):
self.response.write('Hello world!')
app = webapp2.WSGIApplication([
('/', MainHandler)
], debug=True)
vanilla python项目中的导入工作正常,但GAE应用程序中的导入返回回溯:
Traceback (most recent call last):
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
File "/Users/chez 1/google-app-engine-projects/untitled/main.py", line 18, in <module>
import psutil
ImportError: No module named psutil
是否有人遇到类似问题并找到了解决办法?
答案 0 :(得分:0)
您可能已在本地系统上安装了cudnn_conv_layer.cu:28] Check failed: status == CUDNN_STATUS_SUCCESS (8 vs. 0) CUDNN_STATUS_EXECUTION_FAILED
软件包(因此在终端/控制台中工作),但未在您的应用中安装(即安装在应用的psutil
目录中)<标准环境应用程序的强>必需(SDK模拟真正的GAE,无论安装到本地python安装中的是什么都没有意义)。来自Installing a third-party library:
创建一个目录来存储您的第三方库,例如
lib
。lib/
- 醇>
使用带有
mkdir lib
标志的pip(版本6或更高版本)将库复制到您之前创建的文件夹中 步。例如:-t <directory>
只需将pip install -t lib/ <library_name>
包中的供应商添加到您的应用中。
答案 1 :(得分:0)
根据我的经验,此错误和类似的“ 没有名为... 的模块”错误是由错误定义的python解释器引起的。请参见以下网址的答案:ImportError: No module named 'bottle' - PyCharm