繁体   English   中英

无法通过python 3.4上运行的pip安装模块

[英]Cannot install modules via pip running on python 3.4

我一直在尝试安装运行此脚本所需的各种模块:

https://github.com/austingandy/slack-evernote/blob/master/slackwriter.py

我正在使用Mac,我的python --version是:

Python 3.4.3 :: Anaconda 2.3.0 (x86_64)

我有python -m pip --version

pip 8.0.2 from /Users/dhruv/anaconda/lib/python3.4/site-packages (python 3.4)

但是,例如当我运行pip install evernote我得到的错误如下:

Collecting evernote
  Using cached evernote-1.25.1.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/cj/5gs43w4n2tz313rrnz9_htf00000gn/T/pip-build-0y7hm202/evernote/setup.py", line 6
        exec x
             ^
    SyntaxError: Missing parentheses in call to 'exec'

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/cj/5gs43w4n2tz313rrnz9_htf00000gn/T/pip-build-0y7hm202/evernote

我有一种感觉,这些错误是因为pip具有的setup.py代码是python 2.7格式,我的环境是3.4,但是如何整体安装运行此脚本所需的所有软件包呢? 我是否会更改为python 2.7,在该环境中安装,然后将evernote的设置重新打包为python 3.4格式? 如果是这样,怎么样?

尚不支持AFAIK,Evernote SDK for Python 3。

https://github.com/evernote/evernote-sdk-python3

这是一个测试SDK! 官方的Evernote SDK for Python还不支持Python 3; 我们尝试迁移时,此存储库是一个实验。

您可以尝试从上面的链接手动安装或降级到虚拟环境中的python2。

虽然可以将脚本从Python 2迁移到Python 3,但正确执行并非易事。 您可以尝试使用2to3,但我怀疑它不会完成这项工作。

最简单的方法就是在Python 2上使用virtualenv 。我不确定它在Mac上是怎么回事,但是在Linux上你可以同时安装两个版本的Python,你可以在你的virtualenv中选择你需要的那个版本,例如:

virtualenv -p python2 venv

其中python2是你的Python 2二进制文件,并且你想要将virtualenv安装到目录中。

您可能遇到麻烦的地方是激活脚本,它们仅适用于特定的shell。 但是,如果没有开箱即用,你可能会调整一个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM