找到一个容易取出的符号结果



sympy给出的结果如下:

Ellipse(Point(0,0),3,2)
Point(2.875, -0.661437827706861)

如果我想拿起这些数字:0,0,3,2,2.875...有什么简单的方法可以得到它们吗?

>>> from sympy import Ellipse, Point
>>> e = Ellipse(Point(0, 0), 3, 2)
>>> p, maj, min_ = e.args
>>> maj
3
>>> p
Point(0, 0)
>>> x, y = p.args
>>> x
0

如果你只想要数字,你可以用atoms(Number)得到它们:

>>> Point(2.875, -0.661437827706861).atoms(Number)
set([-661437827706861/1000000000000000, 23/8])
>>> Ellipse(Point(0, 0), 3, 2).atoms(Number)
set([0, 2, 3])
>>> Tuple(Point(2.875, -0.661437827706861), Ellipse(Point(0, 0), 3, 2)).atoms(
... Number)
set([0, 2, 3, -661437827706861/1000000000000000, 23/8])

最新更新