【问题标题】:No module named 'info' on fresh Python 3 installation全新 Python 3 安装中没有名为“info”的模块
【发布时间】:2017-08-27 06:32:42
【问题描述】:

我通过自制软件在 OSX 上进行了全新的 python3 安装:

brew install python3

然后我为我的项目创建了一个虚拟环境并安装了scipyscikits.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


【解决方案1】:

问题似乎是包scikits.samplerate 不支持Python 3.X(见issue)。但是,有a fork which supports Python 3.X。你可以通过安装它

$ pip install git+https://github.com/gregorias/samplerate.git

一如既往:人们可以在存储库中制作任何他们喜欢的东西。我没有检查 gregorias 做了哪些更改。

【讨论】:

    【解决方案2】:

    git版本确实支持py3

    https://github.com/cournape/samplerate

    (合并来自 @gregorias 的 PR)

    我也应该找到更新pypi的时间和程序......

    【讨论】:

      猜你喜欢
      • 2013-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 1970-01-01
      • 2017-09-21
      • 1970-01-01
      相关资源
      最近更新 更多