我已经安装了pyenv在 Ubuntu 12.04 上。它的默认 python 版本为 2.7.3。我已在 /home/test/abc
的 dir abc
中安装了 2.7.5。我已经使用 apt-get
安装了 python-uno
。
如果我在 /home
下执行import uno
,它会导入 uno 包。
>>> import uno
>>> uno.__file__
'/usr/lib/python2.7/dist-packages/uno.pyc'
但是当我尝试在 abc
下导入它时,它给出了错误,
>>> import uno
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named uno
如何处理这个错误?
最佳答案
这是 pyenv 的预期行为。解决方案之一是在 pyenv 内创建虚拟环境(virtualenv)。对于这个需求pyenv-virtualenv存在。
但这并不是这种情况的完整解决方案。创建 virtualenv 期间不会导入 UNO 文件。因此,我们必须手动将 uno.py
和 unohelper.py
从系统位置复制到 pyenv installtion。
将 uno.py
和 unohelper.py
复制到 pyenv python site-packages 解决了我的问题。
关于python - Apt 包未反射(reflect)在 Pyenv 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21379637/