我最近更换了计算机。安装anaconda之后,我安装了chaospy软件包,并尝试运行在以前的计算机上可以运行的程序之一。但是,出现了一个问题:
它说不能导入名字限制。这应该来自库contextlib。 https://docs.python.org/3/library/contextlib.html
我的工作版本是2.7;这种抑制不应该有任何兼容性问题。
有人知道发生了什么吗? 谢谢
答案 0 :(得分:1)
contextlib.suppress
不在python 2.7中。从文档中:
contextlib.suppress(* exceptions)
返回一个上下文管理器,该上下文管理器将抑制任何指定的异常(如果它们出现在with语句的主体中),然后在with语句结束之后从第一个语句恢复执行。与任何其他完全抑制异常的机制一样,此上下文管理器仅应用于涵盖非常具体的错误,在这些错误中,静默继续执行程序是正确的做法。
3.4版中的新功能。
解决方案是在新计算机上升级到使用python> = 3.4。