【问题标题】:HttpLib2 Works in Python 2 but not in Python 3 on OSXHttpLib2 适用于 Python 2,但不适用于 OSX 上的 Python 3
【发布时间】:2014-02-19 01:10:10
【问题描述】:

所以我有一个程序要从 python 2.7 转换为 python 3.3。一切都在 2.7 中完美运行,但在 3.3 中我不断得到:

ImportError: No module named 'httplib2'

现在,我已经安装了 httplib2,就像我说的,它可以在 python 2.7 中运行。程序的2.7版本和3.3版本在同一个目录下,所以我认为不会影响它。有人知道这是什么问题吗?

唯一相关的代码sn-ps是:

import httplib2
from httplib2 import FileCache

【问题讨论】:

  • 你在 Python3 上安装了吗?
  • 也许这听起来很愚蠢,但我在终端中安装了库,我所做的只是输入'python install setup.py'。那么,我将如何专门为 python 3 安装它?
  • 如果你在 Python3 中有 setuptools 我会试试 python3 install setup.py
  • 为什么这个问题被否决了? OP值得解释!
  • 我想我有安装工具,但是那个命令给了我一个语法错误。

标签: python macos python-2.7 python-3.x


【解决方案1】:

尝试进入终端并运行:

sudo apt-get install python3-httplib2

我知道你说你已经安装了它,但我遇到了同样的错误,上面解决了它。

编辑:抱歉,我知道你现在使用的是 OSX。您可以将以上内容翻译成适用于 Mac 的正确命令吗?

【讨论】:

  • 我收到错误“sudo: apt-get: command not found”。我认为这是因为 OSX 没有安装 sudo。
  • 是的,对不起,我忘了 OSX 的终端是不同的。让我试着找到对应的。
  • 其实我想我已经以某种方式安装了它,但现在运行程序时出现此错误: Traceback (last recent call last): File "/Users/Kevin/Documents/UROP/googletranslator3. py”,第 81 行,在 中导入 httplib2 文件“/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/httplib2/__init__.py”,第 897 行打印“连接: (%s, %s) ************" % (self.host, self.port) ^ SyntaxError: invalid syntax
  • 嗯...奇怪。可能与this issue有关?
【解决方案2】:

正如其他人所提到的,这意味着httplib2 未安装到您的 Python 3 安装中。有人推荐你试试这个:

sudo python3 install setup.py

你提到你有一个错误——有充分的理由。 python3 采用文件名first。命令真的应该是

sudo python3 setup.py install

需要以这种方式或其他批准的方式(例如,easy_install-3.3pip-3.3)安装它。您以不同方式安装它时出现的错误表明您的安装跳过了2to3 步骤,否则该包将包含 Python 2 代码,Python 3 偶尔会阻塞。尝试以以前的方式卸载它并以这种方式安装。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-01
    • 1970-01-01
    • 2016-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-07
    相关资源
    最近更新 更多