How to| 创建变量和函数的定义

Wolfram 语言具有一组非常全面的函数记号,例如任意变换规则等. 变量也是按这种方式赋值. 一旦您设定了一个变量的值,该变量将变成这个值的符号.

这是一个简单的变换规则. 它指定:只要看到 x,就用3代替:

变量 x 的值为3.

无论您何时计算一个表达式,都用3来代替 x

该规则可以通过定义一个新规则去除:

新规则指定:无论何时看到 x,都将它代之以 y^2. 到此为止由于没有与 y 相关的规则,因此它的值就是其自身.

y 赋值:

现在如果计算 xx 的规则指定用 y^2 代替 x,且 y 的规则指定用4代替 y,因此结果是 4^2 即16:

如果要改变 y 的值,则 x 的值也随之改变:

现在为 z 赋上一个值,像这样:

由于 y 的值已经被赋为3,您已定义规则用9代替 z,而不是y^2 代替 z. 因此 z 独立于 y

这种情况的出现是因为当一个规则使用 = (Set) 定义时,等号右端在规则定义之前计算.

您也可以使用 := (SetDelayed) 定义规则,像这样:

当一个规则用 := 定义时,等号右端在规则定义之前不被计算. 因此即使 y 已经有值,这个新规则指定的是:只要看到 z,就将它用 y^2 代替. 因此在这里,z 取决于 y

Wolfram 语言中的函数由行为遵循模式的规则定义. 这是一个简单的模式:

f[x_] 是一个模式,x_ 在其中代表任意表达式(在右端通过名称 x 表示). 规则指定:对于任何表达式的 f ,将其用该表达式的平方代替:

这是一个有两个自变量的函数:

始终使用 := 定义函数,否则等号右端的变量有可能不代表左端的相关表述,因为它们将在规则定义之前被计算:

这种情况发生的原因是 x 为 9, y 为 3. 规则指定任何与模式 h[x_,y_] 匹配的都用90来代替: