【问题标题】:Why do I have problems loading a module in Python3 but not in Python2?为什么我在 Python3 中加载模块但在 Python2 中没有问题?
【发布时间】:2014-08-04 14:33:24
【问题描述】:

根据我使用的 Python 安装,我在加载模块时遇到了一些问题。当我输入

from quantecon import approx_markov

在使用Python 3.4.0的终端中,返回如下错误信息:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.4/dist-packages/quantecon/__init__.py", line 6,in <module> 
    from asset_pricing import AssetPrices
ImportError: No module named 'asset_pricing'

在上面提到的文件夹 /usr/... 中,我确实找到了一个名为 asset_pricing 的模块。 (我不得不承认我也不明白为什么模块asset_pricing会干扰。)

我安装了quantecon

pip3 install quantecon 

我怀疑这些问题与我使用的 Python 版本有关。我也安装了

pip install quantecon

当我使用 Python 2.7.6(我认为这是我正在使用的操作系统的标准 Python 版本)从终端调用模块 approx_markov 时,我没有收到任何错误消息。为了解决这个问题,我已经按照以下讨论中的说明进行操作,但无济于事Python3 has no acces to python2 modules (ubuntu)

【问题讨论】:

  • 感谢您的编辑,Martijn。

标签: python python-2.7 python-3.x ubuntu-14.04


【解决方案1】:

quantecon 当前发布的版本不兼容 Python 3;它使用相对导入,Python 3 不再支持这些。

the source repository 中的版本已经过重构和更新,看起来可以与 Python 3 一起使用。您需要安装该版本:

pip3 install -U git+https://github.com/jstac/quant-econ.git

-U 告诉pip3 升级软件包。

注意有一个lot of changes recently;使用风险自负。您可以坚持使用 Python 2 并等待正式发布。

【讨论】:

  • 如果可能,最好使用 python 2.x,因为其中许多更改是最近才提交的,并且可能仍然存在未解决的(和未知的)错误。
  • @Dunes:这就是为什么我说 [it] 看起来会起作用的原因。是的,需要注意的是存储库仍在大力开发中。
  • 我知道,它只是认为对于可能不像你那么熟悉 python 的人来说,这是值得强调的一点。
  • 谢谢你的回答,Martijn。由于 quantecon 已经安装,我不得不升级它。我将您的代码修改如下:“pip3 install git+github.com/jstac/quant-econ.git -- upgrade”。你能告诉我你是怎么知道 quantecon 与 Python3 不兼容的吗?一般来说,我如何识别这些限制?
  • @fabian: 添加-U 开关将告诉pip 升级。 :-)
猜你喜欢
  • 1970-01-01
  • 2019-10-24
  • 2015-05-24
  • 2015-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-18
  • 2020-07-12
相关资源
最近更新 更多