安装#

注意

本页面介绍如何手动安装和配置modelx及相关软件包,适用于高级Python用户或Linux/Mac用户。

对于Windows用户, 建议使用最新的定制版WinPython搭配modelx, 可在此处here获取。 只需解压下载的文件即可开始使用modelx, 无需遵循本页面的步骤。

Python 版本#

modelx 需要 Python 3.7 或更高版本。 但 Python 3.7 已到达生命周期终止阶段, 因此如果您仍在使用 Python 3.7,建议进行升级。 Python 版本越新,其运行性能越优。

包依赖#

以下列出的软件包是modelx所必需的,或者可以与modelx一起使用以更高效地开发模型。

  • NetworkX (>=2.0) (必选)

  • asttokens (必需)

  • LibCST (必需)

  • pandas (几乎必需,但未通过modelx依赖项安装)

  • OpenPyXL (几乎必需,但未通过modelx依赖项安装)

  • Spyder (>=4.0.0) (可选)

您可以在不安装pandas或OpenPyXL的情况下安装和使用modelx, 但当需要使用这些包的功能时,modelx会报错。 pandas和OpenPyXL不会作为modelx的依赖项自动安装, 因此如果缺少这些包,您需要单独安装它们。

networkx#

NetworkX 是 modelx 依赖的必要软件包。需要 2.0 或更高版本。

asttokens#

asttokens是modelx依赖的必需包。

LibCST#

LibCST是modelx依赖的必需包。

Pandas#

虽然modelx并不严格要求安装pandas,但您应该安装pandas,因为modelx中的某些方法需要依赖pandas,如果调用这些方法时未安装pandas将会报错。

在大多数Python发行版中,pandas已预安装,但如果未安装,可以通过在控制台输入pip install pandas来安装,或者如果您使用Anaconda,可以通过conda install pandas安装。

Openpyxl#

OpenPyXL 是一个支持读写 Excel 文件的软件包。 OpenPyXL 并非严格必需, 但某些方法(例如 new_pandas()) 需要依赖它来与 Excel 文件交互。 因此,要让 modelx 完全正常运行,您应该安装 OpenPyXL。

要通过pip安装OpenPyXL,请在控制台输入pip install openpyxl, 如果使用Anaconda,则输入conda install openpyxl

Spyder#

要在流行的开源Python IDE Spyder中使用modelx, 可以安装一个modelx插件。 spyder-modelx是一个独立的软件包,用于添加自定义IPython控制台 和Modelx资源管理器(这是一个以树状视图显示当前模型的小部件)。 支持的Spyder版本为4.0.0或更新版本。 关于如何安装该插件,请参阅此处

安装modelx#

注意

对于lifelib用户来说,当使用pipconda安装lifelib时,由于依赖关系modelx会自动安装,因此无需单独安装modelx。

与其他Python包一样,您可以通过在Linux终端或Windows命令提示符中运行pip命令来安装modelx。如果您的Python环境是Anaconda,请使用conda命令替代pip,如下所述。

要使用pip安装当前版本的modelx

> pip install modelx

要使用--upgrade标志升级到新版本:

> pip install --upgrade modelx

要让modelx仅对您可用而对其他人不可见,请使用--user标志将其安装到您的用户目录中:

> pip install --user modelx

要卸载 modelx

> pip uninstall modelx

如果您更倾向于从本地机器上的文件安装modelx, 而不是直接从网络获取, 您可以手动从 GitHubPyPI下载modelx文件。 解压下载的文件后,在源代码目录的顶层运行以下命令:

> pip install .

要安装最新的开发版本而非发布版本,请从GitHub克隆modelx仓库,然后以可编辑模式从克隆的仓库中安装它们。

Anaconda环境#

Anaconda 是一个用于科学计算的Python发行版,它拥有自己的包管理命令conda。如果你的Python环境基于Anaconda发行版,请不要使用pip来安装和更新modelx,而应该使用conda命令。

要安装当前版本的 modelx

> conda install -c conda-forge modelx

升级modelx:

> conda update modelx

卸载modelx:

> conda remove modelx

Spyder集成#

Spyder 是一款流行的开源 Python 集成开发环境,modelx 提供了对应的 Spyder 插件。有关 modelx 的 Spyder 插件更多信息,请参阅 Spyder 插件 页面

配置Spyder#

禁用用户模块重载器

当你在Spyder中使用modelx时,有时可能需要在同一个IPython会话中多次重新运行编辑器窗口中的同一个文件。你不想重新加载modelx,因为重新加载modelx模块会在同一个Python进程中创建多个modelx系统实例,导致重新加载前后创建的模型存在于不同的modelx系统中。为了避免这种情况,你需要更改用户模块重新加载器(UMR)设置。

从Spyder菜单中选择工具->首选项打开首选项窗口。 在左侧面板选择Python解释器,您将在首选项窗口右下角找到标有 用户模块重载器(UMR)的区域。 保持启用UMR选项勾选状态, 点击设置UMR排除(不重载)模块,随后UMR对话框会弹出 如下图所示。 在对话框中输入"modelx"。这样可以防止 Spyder在您每次从运行菜单重新运行相同脚本时重载modelx模块, 同时允许其他模块被重载。

请注意,您需要重启Spyder才能使更改生效。

_images/PreferencesUMR.png

用户模块重载器设置#

在IPython启动时导入modelx

当你在IPython中使用modelx时,首先需要导入modelx。 每次打开新的IPython会话都这样做很繁琐, 因此有一种方法可以在每次IPython会话启动时自动导入modelx。 从Spyder菜单中选择工具->首选项打开首选项窗口。 在左侧面板中选择IPython控制台,然后从右侧标签页中选择 启动选项卡。 在运行代码区域标有行:的框中输入import modelx as mx, 然后点击确定。下次你打开新的IPython会话时, modelx就会以mx的名称导入到IPython的全局命名空间中。

_images/PreferencesStartup.png

IPython 启动设置#

为modelx安装Spyder插件#

该插件作为独立的Python包提供,名为spyder-modelxspymx-kernels

支持的Spyder版本为4.0.0或更新版本。该插件不兼容Spyder 3.x系列。

spyder-modelx 包已在 PyPI 上提供,可以使用 pip 命令安装。 如果您使用的是 Anaconda 发行版,请不要使用 pip 而应使用 conda

> pip install spyder-modelx

使用Anaconda:

> conda install -c conda-forge spyder-modelx

spymx-kernels 会自动安装,因为 spyder-modelx 依赖 spymx-kernels

如果在安装插件时Spyder正在运行,请关闭Spyder一次并重新启动以使插件生效。

更新软件包#

要将modelx更新至最新版本,可使用-U选项配合pip install命令, 或通过Anaconda使用conda update命令:

> pip install -U modelx

在Anaconda上:

> conda update modelx