定义

替换运算 将规则作用于一个表达式. 但经常需要在可能的情况下自动使用变换规则.

这可以通过对 Mathematica 表达式和模式赋值来实现. 赋值表明适当形式的表达式出现时就使用规则.

expr/.lhs->rhs将规则用于一个表达式
lhs=rhs赋值使规则可能时立即使用

人工和自动应用变换规则.

对指定的表达式使用关于 的变换规则.
In[1]:=
Click for copyable input
Out[1]=
通过对 赋值,可以告诉 Mathematica 对后面的任何 使用变换规则.
In[2]:=
Click for copyable input
Out[2]=
现在 自动地进行变换.
In[3]:=
Click for copyable input
Out[3]=

ModuleBlock 等一些内部结构外,在 Mathematica 中的所有赋值都是永久 的. 若没有清除或改写它们,在 Mathematica 的同一个进程中所赋值保持不变.

赋值的永久性意味着使用时要特别慎重. 一个在使用 Mathematica 时,常犯的错误是在后面使用 时忘记或误用了前面 的赋值.

为了减少这一错误,可能时尽量避免赋值而用替换运算 等,也可以在任务完成后立即用 或函数 Clear 去清除所赋的值.

另外一种避免这一错误的途径是对常用或简单的变量名赋值时要仔细考虑. 例如,经常使用变量名 作为符号参数. 但是如果用 赋值后,以后出现的 都用 代替,且以后也再不能将 当作一个符号参数使用.

一般来说,不要对有几种用途的变量赋值. 例如,若在某处用 变量表示光速 . 则以后就不能将 用作一个待定参数. 避免这种情况的一种途径是对光速用更加明确的变量名,如 .

x=.清除对 x 的赋值
Clear[x,y,...]清除变量 xy,... 的所有值

清除赋值.

在前面赋过值时,就不一定能给出所期望的结果.
In[4]:=
Click for copyable input
Out[4]=
清除 以前的值.
In[5]:=
Click for copyable input
现在给出了正确的结果.
In[6]:=
Click for copyable input
Out[6]=
New to Mathematica? Find your learning path »
Have a question? Ask support »