- SymPy 教程
- SymPy - 主页
- SymPy - 简介
- SymPy - 安装
- SymPy - 符号计算
- SymPy - 数字
- SymPy - 符号
- SymPy - 替换
- SymPy - sympify() 函数
- SymPy - evalf() 函数
- SymPy - Lambdify() 函数
- SymPy - 逻辑表达式
- SymPy - 查询
- SymPy - 简化
- SymPy - 导数
- SymPy - 集成
- SymPy - 矩阵
- SymPy - 函数类
- SymPy - 四元数
- SymPy - 求解器
- SymPy - 绘图
- SymPy - 实体
- SymPy - 套装
- SymPy - 打印
- SymPy 有用资源
- SymPy - 快速指南
- SymPy - 有用的资源
- SymPy - 讨论
SymPy - 符号
Symbol是 symPy 库中最重要的类。正如前面提到的,符号计算是用符号完成的。SymPy 变量是 Symbols 类的对象。
Symbol() 函数的参数是一个包含可以分配给变量的符号的字符串。
>>> from sympy import Symbol >>> x=Symbol('x') >>> y=Symbol('y') >>> expr=x**2+y**2 >>> expr
上面的代码片段给出了相当于下面表达式的输出 -
$x^2 + y^2$
一个符号可以由多个字母组成。
>>> s=Symbol('side') >>> s**3
上面的代码片段给出了相当于下面表达式的输出 -
$边^3$
SymPy 还有一个Symbols()函数,可以一次定义多个符号。字符串包含由逗号或空格分隔的变量名称。
>>> from sympy import symbols >>> x,y,z=symbols("x,y,z")
在 SymPy 的 abc 模块中,所有拉丁字母和希腊字母都被定义为符号。因此,这种方法比实例化Symbol对象更方便。
>>> from sympy.abc import x,y,z
然而,名称C、O、S、I、N、E和Q是预定义的符号。另外,abc 模块中没有定义具有多个字母的符号,为此您应该使用上面的 Symbol 对象。abc 模块定义了可以检测默认 SymPy 命名空间中的定义的特殊名称。crash1 包含单个字母,clash2 包含多字母冲突符号
>>> from sympy.abc import _clash1, _clash2 >>> _clash1
上述代码片段的输出如下 -
{'C':C,'O':O,'Q':Q,'N':N,'I':I,'E':E,'S':S}
>>> _clash2
上述代码片段的输出如下 -
{'beta':beta,'zeta':zeta,'gamma':gamma,'pi':pi}
索引符号可以使用类似于 range() 函数的语法来定义。范围由冒号表示。范围类型由冒号右侧的字符确定。如果 itr 是数字,则将左侧的所有连续数字视为非负起始值。右侧所有连续数字均被视为比结束值大 1。
>>> from sympy import symbols >>> symbols('a:5')
上述代码片段的输出如下 -
(a0、a1、a2、a3、a4)
>>> symbols('mark(1:4)')
上述代码片段的输出如下 -
(标记1、标记2、标记3)