【发布时间】:2017-08-27 06:32:42
【问题描述】:
我通过自制软件在 OSX 上进行了全新的 python3 安装:
brew install python3
然后我为我的项目创建了一个虚拟环境并安装了scipy和scikits.samplerate:
virtualenv -p /usr/local/bin/python3 pythen_env
pip install scipy
pip install scikits.samplerate
但是,当我尝试从 scikits.samplerate 导入函数时,出现以下错误:
>>> from scikits.samplerate import resample
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/my/project/path/pythen_env/lib/python3.6/site-packages/scikits/samplerate/__init__.py", line 4, in <module>
from info import __doc__
ModuleNotFoundError: No module named 'info'
Info 恰好是包本身中导入 __init__.py 的第一个模块。
奇怪的是,info.py 模块存在于/my/project/path/pythen_env/lib/python3.6/site-packages/scikits/samplerate/:
ls /my/project/path/pythen_env/lib/python3.6/site-packages/scikits/samplerate/
__init__.py setup.py tests __pycache__
info.py setuphelp.py version.py
当我在没有virtualenv 的情况下尝试同样的操作以及其他包时也会发生错误。我该如何开始调试这个问题?
【问题讨论】:
-
您似乎正在使用该模块的 Python 2.x 版本;在 3.x 中,应该是
from .info ... -
Python 2.7 不会出现这个问题。
-
由于依赖库,我无法切换到 Python 2.7。我如何确保 pip 安装正确的版本?我希望 pip3 只为 Python 3 获取包,但会发生同样的错误。
标签: python-3.x installation pip scikits