0

我想知道最近的 Canopy 更新(我现在使用的是 1.1;Windows 7 x64)是否以某种方式破坏了我的 python 路径。我无法再导入从命令行安装的软件包(因此最终位于 C:\Users\USERNAME\AppData\Local\Enthought\Canopy\System\Lib\site-packages 或 C:\Users\ USERNAME\AppData\Local\Enthought\Canopy\User\Lib\site-packages),在更新之前工作得很好。有趣的是,Canopy 安装的 PyLab 链接也失败了(“没有名为 matplotlib 的模块”)。有什么建议可以解决这个问题吗?

4

1 回答 1

0

您安装到 Canopy\User 中的任何软件包仍应可导入。从 Canopy 1.1 开始,您安装到 Canopy\System 中的任何软件包都不会。实际上,这些不应该安装在那里,因为系统仅供 Canopy 应用程序本身内部使用。

改变的是,我们现在更加严格地执行外部包只能安装到 Canopy 用户 Python 中的规则:https: //support.enthought.com/entries/23389761-Installing-packages-into-Canopy-Python-from -命令行

有关虚拟环境布局的更多信息,请参阅: http ://docs.enthought.com/canopy/configure/faq.html#where-are-all-of-the-python-packages-in-my-user-蟒蛇环境

在拓扑上,Canopy System Python 在 Canopy 1.0 和 Canopy 1.1 中都是 Canopy Core Python 的子代,而 Canopy User Python 从 1.0 中的 System 子代变为 1.1 中的兄弟姐妹。通过这个改变,我们损失了一点磁盘空间来复制包,并获得了更多的健壮性。

最终结果是使用 Canopy 1.1,System 不再位于 Canopy User Python 的 sys.path 上。

底线:我建议退出 Canopy 并删除系统目录,以便在下次重新启动时干净地重新创建它。然后按照规范将“丢失”的包安装到用户中。

希望这可以帮助。

于 2013-09-02T21:13:21.477 回答