python - iPython 笔记本中的 Sympy : printing an entire function

标签 python sympy

目前,在 SymPy 中打印方程式时,它只打印方程式的“右侧”,不包括“左侧”。例如

>>> a = b*d
>>> a
b*d 

而我想要的是:

>>> a = b*d
>>> a
a = b*d

其中很大一部分是 mathjax 提供的漂亮格式,以及当我向非程序员的同事展示时更具可读性。有没有办法在输出中包含方程式的主题?

注意抱歉,我的数学术语不是很好

最佳答案

Python 不是那样工作的。 Python 中的变量只是标签。

SymPy 是一个 Python 库,而不是围绕 Python 的东西,因此它符合该语言的语法和语义。当你写 a=b您正在创建标签 a指向与标签 b 指向的对象相同的对象(基于或不基于 SymPy)点。有关更多详细信息,请查看变量在 Python 中的工作方式。

当您创建 SymPy 表达式时,您将从类 Symbol 的对象实例开始并建立起来。 Symbol 的参数constructor 是一个主要用于打印的名称。你可以写a = b = c = Symbol('fancy_name')所有三个标签都将指向同一个对象:Symbol('fancy_name')实例。查看 Sympy 文档中的教程。

大多数时候您使用的是 SymPy 表达式,而不是函数。作为初学者,您不需要关心功能。

最后,如果出于某种原因你希望将等式或不等式作为表达式(大多数时候你不需要这个),你可以用

创建它们
>>> relational.Eq(x, y)
x=y

关于python - iPython 笔记本中的 Sympy : printing an entire function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15513054/

相关文章:

python - lambda 函数用 name_with_spaces 替换列名

python - pytest 解析参数并比较输出文件

python - file.readlines 留下空行

python - 动态定义sympy.abc变量: name error handling

python - Python 中的积分 : Add object not callable

python - python调用mysql存储过程并将结果写入csv文件

python - 模型 View 设计中的属性

python - 从 Matlab 到 Python - 求解函数

python - 基本优化的 numpy 和 sympy lambdify 结果的差异

python - 如何在不使用 `plot3d_parametric_line` 的情况下绘制参数曲线