我刚刚开始使用 IPython 进行交互式开发和探索性研究,我发现所有很酷的功能和可能性都非常令人兴奋。我正在使用 Anaconda 包管理器来管理依赖项,其中包括 IPython。
根据我的阅读,IPython 团队的一个目标是最终将 Sage Math (CAS) 集成到 IPython 中,作为一种细胞魔法。有谁知道这是否仍在开发中?或者更确切地说,如果我现在想使用 Sage,那么编写扩展是实现此目的的唯一方法 [1]?
[1] https://github.com/ipython/ipython/wiki/Extensions-Index
另外,如果我为科学开发安装了额外的包,不包含在 Anaconda 发行版中,这是否像 pip 一样简单,还是我必须通过 Anaconda 包构建来处理依赖关系等?如果我只使用 IPython,我可以理解只是按照文档中的建议执行 easy_install 或 pip,但我相信这会覆盖 Anaconda 中的现有依赖项。如果我使用 pip,如果我不安装在 Anaconda 环境中,这将如何影响 Anaconda 依赖项,我认为它与 virtualenv.py 等效,这也是设置修订控制(即 Mercurial)的方式吗?
澄清一下,我不想在 Sage 中运行 IPython,我想在 IPython 中作为 CAS 运行 Sage。我宁愿采用集成领域特定语言的 Sage 方法。或者相反,IPython 扩展会取代 Sage 吗?
我是一名自学成才的程序员,而不是专业的软件开发人员。作为一名工程师,我习惯于使用 Matlab、Mathematica 和商业解决方案,这些解决方案使我能够抽象出管道。我试图把所有东西都粘在一起,但由于缺乏知识,它就像意大利面汤和动态链接库的混合体。我可能使用了错误的方法。
我想要的是 Anaconda/Enthought 包管理(IPython、pandas 等)、通过钩子/扩展或魔法自定义滚动 Sage、Anaconda 中未包含的包的扩展(即 Matlab 参见上面的 [1]),以及版本控制Git 和 Mercurial。专业开发人员如何在 Mac 或 Linux 机器上进行设置?