跳转到主要内容

Mathics3的命令行界面

项目描述

CI status Pypi Installs Latest Version Supported Python Versions

Packaging status

mathicsscript是Mathics的命令行界面。

screenshot

请参阅截图目录以获取描述和另一个示例。

功能

  • prompt_toolkit和GNU Readline终端交互。这包括
    • 在会话之间保存命令历史。

    • 变量完成,甚至包括符号名称,如\\[Sigma]

    • 有限的ESC键盘输入;例如 esc p esc 是 π

  • 使用mathics-pygments进行语法高亮,它包括动态创建的变量和函数。

  • 自动检测光或暗终端背景颜色

  • 可选通过matplotlib进行2D图形和通过Asymptote进行3D图形的图形渲染。

  • 输入和显示Unicode符号,如用于Pi或Rule箭头的符号

  • 提供在非交互式批处理模式下运行的能力,这可以在POSIX shell中使用

安装

要安装,运行

$ make install

要从git源安装,以便您从git源树运行

$ make develop

运行

安装后使用 mathicsscript 运行。

$ mathicsscript
Mathicscript: 7.0.0, Mathics 7.0.0
on CPython 3.7.10 (default, Feb 23 2021, 10:13:46)
using SymPy 1.8, mpmath 1.2.1, numpy 1.20.2, cython 0.29.22

Copyright (C) 2011-2024 The Mathics Team.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions.
See the documentation for the full license.

Quit by evaluating Quit[] or by pressing CONTROL-D.

In[1]:=

用于批量操作

$ mathicsscript -c "N[Pi, 30]"
3.14159265358979323846264338328

从文件读取

在文件 /tmp/test.m

sum=2+2
integral=Integrate[1,x]
Print["Results: ",{sum,integral}]

将此输入到 mathicsscript

$ mathicsscript --no-prompt </tmp/test.m
4
x
Results: {4, x}
None

要查看所有选项,请输入 mathicsscript --help

为什么不通过 Jupyter 使用 IPython 呢?

始终需要简单类似终端的交互。尽管 Jupyter 支持通过 IPython,但这所有功能都非常重量级。为了编写符合此协议的代码,开发者需要编写内核并使用线协议。这不仅增加了开发该包的人的复杂性,还增加了需要加载未使用额外层的用户的复杂性。当出现问题的时候,追踪问题会更加困难。

在光谱的另一端,如果该包的依赖项过于繁重,并且您想要更简单、更轻量级的终端交互 而不 是上面提到的任何功能,请使用作为 Mathic3 核心包一部分分发的 mathics

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。

源分布

mathicsscript-7.0.0.tar.gz (64.2 kB 查看哈希)

上传时间

构建分布

mathicsscript-7.0.0-py3-none-any.whl (59.0 kB 查看哈希)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面