【发布时间】:2018-02-07 01:03:09
【问题描述】:
问题
我正在尝试开发一个基本的 Google App Engine 应用。我从事大量数据科学工作,因此我使用 Anaconda 来管理我的 Python 发行版。
最近我一直在尝试设置 Google Cloud SDK + Google Cloud Client Libraries 以在 GAE 上开发(在标准环境中),但无法让两者一起运行。
我已经激活了 Python 2.7 env (py27),当我尝试运行基本应用程序时,我收到以下错误:
File "C:\Users\dominic\Anaconda3\envs\py27\lib\site-packages\google\cloud\bigquery\__init__.py", line 31, in <module>
from pkg_resources import get_distribution
ImportError: No module named pkg_resources
但是该模块存在于py27。
从 SDK 提供的交互式控制台,我可以看到它正在执行正确版本的 python:
import sys, os
print(os.path.dirname(sys.executable))
返回:C:\Users\dominic\Anaconda3\envs\py27
所以我不明白为什么它找不到那个特定的库。我认为这可能与 install any non-third party libraries into lib (在标准环境中)有关,因为只有 a certain set are pre-loaded 在应用程序引擎中(因此可能是云 SDK?),但是当我尝试导入一些预加载的flask 或 futures 之类的库(也安装在这个 python 环境中,这些也失败了)。
如何让 Google Cloud 客户端库在 Cloud SDK 中运行?
我尝试过的其他方法
我已经尝试将特定版本的 python 添加到我的 PYTHONPATH 中,以防它与 Anaconda 管理我的路径有关,但是那完全是 Python:
Error processing line 1 of C:\Users\dominic\Anaconda3\lib\site-packages\matplotlib-2.0.2-py3.6-nspkg.pth:
Failed to import the site module
Traceback (most recent call last):
File "C:\Users\dominic\Anaconda3\lib\site.py", line 168, in addpackage
exec(line)
File "<string>", line 1, in <module>
File "C:\Users\dominic\Anaconda3\lib\types.py", line 171, in <module>
import functools as _functools
File "C:\Users\dominic\Anaconda3\lib\functools.py", line 21, in <module>
from collections import namedtuple
File "C:\Users\dominic\Anaconda3\lib\collections\__init__.py", line 32, in <module>
from reprlib import recursive_repr as _recursive_repr
File "C:\Users\dominic\Anaconda3\envs\py27\Lib\site-packages\reprlib\__init__.py", line 7, in <module>
raise ImportError('This package should not be accessible on Python 3. '
ImportError: This package should not be accessible on Python 3. Either you are trying to run from the python-future src folder or your installation of python-future is corrupted.
我需要将 Anaconda 作为我的主要 python 安装(出于工作目的),但我也希望能够使用 Cloud SDK 进行开发。
环境
- Windows 7
- 蟒蛇安装蟒蛇。
- Python 3.6 是主要版本
- 我正在开发一个 conda py27 环境。
- Google Cloud SDK 已安装并通过身份验证
-
google-cloud-bigquery安装到 py27 中
【问题讨论】:
-
您的目标是标准环境还是柔性环境?他们之间的巨大差异。见stackoverflow.com/questions/45842772/…。
-
好点@DanCornilescu。在问题中澄清。
标签: python windows google-app-engine anaconda google-cloud-sdk