1

过去几天我一直在尝试安装分发进行故障排除,以便我可以开始导入 3rd 方模块。我已经有几年没有使用 python 了,所以我重新记住了所有非常困难的事情。

我按照给定目录的错误,但不知道下一步该做什么。

我正在运行 Eclipse 中运行 python 3.2 的 mac 版本 10.8.2。

这是代码:

Traceback (most recent call last):
  File "/Volumes/James Hard Drive/Python/Python_Lessons/3rd_Party_Stuff/easy_install.py", line 5, in <module>
    from setuptools.command.easy_install import main
  File "/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/distribute-0.6.28-py3.2.egg/setuptools/__init__.py", line 2, in <module>
    from setuptools.extension import Extension, Library
  File "/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/distribute-0.6.28-py3.2.egg/setuptools/extension.py", line 5, in <module>
    from setuptools.dist import _get_unpatched
  File "/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/distribute-0.6.28-py3.2.egg/setuptools/dist.py", line 6, in <module>
    from setuptools.command.install import install
  File "/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/distribute-0.6.28-py3.2.egg/setuptools/command/__init__.py", line 8, in <module>
    from setuptools.command import install_scripts
  File "/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/distribute-0.6.28-py3.2.egg/setuptools/command/install_scripts.py", line 3, in <module>
    from pkg_resources import Distribution, PathMetadata, ensure_directory
  File "/Volumes/James Hard Drive/Python/Python_Lessons/3rd_Party_Stuff/pkg_resources.py", line 45
    def _bypass_ensure_directory(name, mode=0777):
                                               ^
SyntaxError: invalid token
4

3 回答 3

4

要安装分发(和 pip、virtualenv):

#!/bin/bash
# download latest virtualenv.py
wget https://raw.github.com/pypa/virtualenv/master/virtualenv.py

# create a bootstrap virtual environment in ./venv directory
python3 virtualenv.py venv

要激活 virtualenv:

$ . ./venv/bin/activate

现在您可以使用pip,easy_install来安装其他软件包或使用virtualenv-3.x来创建新的 virtualenvs。

如果你使用很多 virtualenvs(不同的项目,不同的 python 版本);您可以使用pip installvirtualenvwrapper轻松管理它们,例如workon/mkvirtualenv/rmvirtualenv命令。

于 2012-10-18T03:15:49.097 回答
2

问题在于 Python 3 对八进制数的解释与 Python 2.x 不同。在 2.x 中,你可以在一个数字前加上 a0来表示它是八进制的。在 Python 3 中,您需要为其添加前缀0o,因此您的号码必须是0o777.

def _bypass_ensure_directory(name, mode=0o777):

有关更多详细信息,请参阅http://docs.python.org/release/3.0.1/whatsnew/3.0.html#integers

于 2012-10-18T02:34:04.680 回答
0

文件 dist 可能不是最新版本。注意:https ://pypi.python.org/pypi/distribute#uninstallation-instructions ;并在 Python(version xxx)\scripts 中用更高版本替换您的文件夹。它在我的情况下引发了这个问题,没有之前描述的文件上的所有解析错误。擦除以前安装的版本以完成。

于 2014-09-24T09:40:14.217 回答