asm*_*rer 51
(完全披露:我是SymPy的首席开发人员)
你应该首先理解的是,SymPy和Sage并不完全相同.SymPy是一个纯粹的Python库,可以完成计算机代数.Sage是一个开源数学软件的集合.Sage试图将所有主要的开源数学软件聚集在一起,并将它们粘合在一起形成一个有用的系统.事实上,Sage将SymPy作为其系统之一.
以下是每个(有偏见的)事实的简短列表(我不会称之为利弊,只是事实):
**就像在Python中一样,而不是^像许多其他系统那样.from sympy import init_session; init_session()在顶部运行(如果你只是想要打印而不是导入所有东西init_session,init_printing则替换).1/2不包装整数文字的情况下键入,并返回一个有理数.x^2给出x平方,而不是Xor(x, 2).我不确定它是否默认为您自动定义变量.这意味着您在交互式Sage会话中执行的操作可能无法直接转换为Python脚本.另一方面,这对于交互式使用非常有用(顺便说isympy -I一下,SymPy也可以做一些类似的事情).也许这不是你想要的.你可能想要一些实际的数学特征.但正如我所说,Sage包含SymPy,因此根据定义,SymPy的每个功能都将成为Sage的一个功能.在实践中,情况不一定是这样,因为Sage默认情况下并不总是使用SymPy(我不确定它的实际状态是什么),因此如果你想使用它,你可能需要手动调用SymPy来自Sage内部.