дающий

быть, кто-то может объяснить мне, почемуReplace дает другой ответ, чемReplaceAllхотя я использую одно правило и, думаю, у меня есть одно выражение.

Согласно документации:

ReplaceAll looks at each part of expr, tries all the rules on it, and then goes on to 
the next part of expr. The first rule that applies to a particular part is used; no 
further rules are tried on that part, or on any of its subparts

и для замены

A list of rules can be given. The rules are tried in order. The result of the first 
one that applies is returned. If none of the rules apply, the original expr is 
returned.

У меня есть это выражение:

z/(0.5 -1.4 z+z^2)

и это одно правило

z -> Exp[I*w]

Следующий вход

Clear[z]
hz = z/(0.5 - 1.4 z + z^2);
Replace[hz, z -> Exp[I*w]]
ReplaceAll[hz, z -> Exp[I*w]]

дает такой результат:

z/(0.5 -1.4 z+z^2)                    (*from Replace*)
E^(I w)/(0.5 -1.4 E^(I w)+E^(2 I w))  (*from ReplaceAll*)

Так,ReplaceAll сделал работу, которую я ожидал, но неReplace, Единственное, что мне здесь не хватает, это то, что делает Части выражения. Так, может быть, хз не «одно» выражение? Хорошо, хорошо, но тогда оно должно было бы применить правило хотя бы к одной его части. Но это не сделало никакой замены нигде

FullForm[hz]
Times[z,Power[Plus[0.5`,Times[-1.4`,z],Power[z,2]],-1]]

Разве это не одно выражение? Если нет, то сколько у него деталей? Это число листьев в конце графика, созданногоTreeForm[hz]? Если это так, то я вижу 3 'z' там, иReplace[] должен был заменить один из них

Я всегда использовал/. не думая об этом, что так же, какReplaceAll, но сейчас я использовалReplace[] мышление было так же, как/.Я нашел это и заметил различные функции. (так много функций для изучения, так мало времени :)

Ответы на вопрос(2)

Ваш ответ на вопрос