replace_letter now steal the history of the letter.
This commit is contained in:
parent
e02687c91b
commit
6428ab2c9e
@ -441,15 +441,30 @@ class AbstractPolynom(Explicable):
|
|||||||
>>> C = A.replace_letter(2)
|
>>> C = A.replace_letter(2)
|
||||||
>>> C
|
>>> C
|
||||||
< Expression [2, 2, *, 1, +]>
|
< Expression [2, 2, *, 1, +]>
|
||||||
|
>>> e = Expression('2+3').simplify()
|
||||||
|
>>> D = A.replace_letter(e)
|
||||||
|
>>> D
|
||||||
|
< Expression [2, 5, *, 1, +]>
|
||||||
|
>>> for i in D.explain():
|
||||||
|
... print(i)
|
||||||
|
2 ( 2 + 3 ) + 1
|
||||||
|
2 \times 5 + 1
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
exp_to_replace = Expression(letter)
|
||||||
|
exp_to_replace.steal_history(letter)
|
||||||
|
|
||||||
postfix_exp = [
|
postfix_exp = [
|
||||||
Expression(letter) if i == self._letter
|
exp_to_replace if i == self._letter
|
||||||
else i
|
else i
|
||||||
for i in self.postfix_tokens
|
for i in self.postfix_tokens
|
||||||
]
|
]
|
||||||
|
ini_step = Expression.develop_steps(postfix_exp)
|
||||||
|
|
||||||
return Expression(postfix_exp)
|
ans = Expression(postfix_exp)
|
||||||
|
ans.this_append_before(ini_step)
|
||||||
|
|
||||||
|
return ans
|
||||||
|
|
||||||
def __eq__(self, other):
|
def __eq__(self, other):
|
||||||
try:
|
try:
|
||||||
|
Loading…
Reference in New Issue
Block a user