Ответ 1
Я тоже не могу понять результаты. Первоначально я думал, что проблема заключается в том, что вы создавали новые объекты var, вместо того, чтобы повторно использовать оригинальные, но это оказалось не таким. Если возможно, я бы просто обновился до 0,7.1- git, где дела обстоят намного лучше:
>>> import sympy
>>> sympy.__version__
'0.7.1-git'
>>> from sympy import S, Eq, solve
>>>
>>> vf, d, a, vi, t = S('vf d a vi t'.split())
>>> equations = [
... Eq(vf, vi+a*t),
... Eq(d, vi*t + a*t**2/2),
... Eq(a, 10),
... Eq(d, 60),
... Eq(vi, 5)]
>>>
>>> solve(equations)
[{vf: -35, t: -4, a: 10, vi: 5, d: 60}, {vf: 35, t: 3, a: 10, vi: 5, d: 60}]
>>> solve(equations, [a, t, vi, vf, d])
[(10, -4, 5, -35, 60), (10, 3, 5, 35, 60)]
Хорошие словари по умолчанию и указание порядка работы.