【发布时间】:2017-08-22 13:51:52
【问题描述】:
在运行下面的代码时,我收到 Python 无法导入 lru_cache 的错误。但是,每次导入(数学等)都会发生这种情况。我已经尝试了我在互联网上可以找到的每一个教程,试图让这个东西工作。我已经重新安装了 Python。也安装了 Pip 和 homebrew。
#!usr/bin
from functools import lru_cache
import math
fibonacci_cache = {}
@lru_cache(maxsize = 1000)
def fibonacci(n):
if n == 1:
return 1
elif n == 2:
return 1
elif n > 2:
return fibonacci(n-1) + fibonacci(n-2)
for n in range(1, 501):
print(n, ":", fibonacci(n))
错误:
Kapoyas-MacBook-Pro:bin Keaton$ python python.py
Traceback (most recent call last):
File "python.py", line 2, in <module>
from functools import lru_cache
ImportError: cannot import name lru_cache
【问题讨论】:
-
lru_cache()在 python3 中。你用的是什么版本? -
也许你的默认python解释器是python2。只需检查一下。
-
我该如何检查。我用谷歌搜索了它,我发现的只是人们告诉我如何编辑 bash 配置文件。老实说,这对我一点帮助都没有。
-
...this happens with every import (math, etc...)建议您更改标题以准确反映您的问题。 -
哦,我显然在使用 2.7!我该如何改变呢?