【问题标题】:should pythonpath have directories specific to python2 and python3?pythonpath 应该有特定于 python2 和 python3 的目录吗?
【发布时间】:2013-10-28 08:31:34
【问题描述】:

我每天都在使用 python 2 和 python 3。 我是否应该添加特定于 python 版本的 PYTHONPATH 路径,如下所示,特定于 python 2?

/usr/local/lib/python2.7/dist-packages

如果答案是,那么 python 3 会知道不使用这些模块吗?

如果答案是,那么如果不是PYTHONPATH,我应该在哪里添加上述路径?

【问题讨论】:

  • 我建议你使用 virtualenv 和 virtualenvwrapper 而不是手动更改 PYTHONPATH

标签: python python-2.x pythonpath


【解决方案1】:

Python 3 将尝试从您的 PYTHONPATH 加载模块并失败。一个可能的解决方案如下。

将您的 PYTHONPATH 设置为

/usr/local/lib/%PYTHON%/dist-packages

并在

返回的目录中创建一个文件sitecustomize.py
python -c "import site ; print site.getsitepackages()"

内容如下:

import sys
from distutils.sysconfig import get_python_version

sys.path = [x.replace('%PYTHON%', 'python{}'.format(get_python_version()))
            for x in sys.path]

这会将目录名称的相关部分替换为执行的任何 python 版本。

【讨论】:

  • 在 Python 3 python -c "import site ; print(site.getsitepackages())"987654324@的打印函数周围使用括号
猜你喜欢
  • 1970-01-01
  • 2016-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多