此为 Mathematica 4 文档,内容基于更早版本的 Wolfram 语言
查看最新文档(版本11.2)

2.1.3 表达式输入的特殊方式

Mathematica 允许用特定的记号表示普通运算符. 例如,尽管在 Mathematica 中用 Plus[x, y] 表示两个数的和,但可以用更方便的方式 来输入它.
Mathematica 语言有确定的语法规则,按照这些规则将你的输入转化为内部格式; 语法的一个方面就是怎样将单个输入进行分组,假如输入了表达式 a+b^c, Mathematica 语法就指出这一表达式将按标准的数学运算 a+(b^c) 进行,而不是 (a+b)^c. Mathematica 选择这样的分组是因为 "^" 比 "+" 有更高的优先级. 一般说来,具有较高优先级的变量比优先级低的变量先进行分组.
Mathematica 的每一个输入都给出了一个确定的优先次序, 不仅通常的数学运算,而且 ->, := , ;也有优先次序. 优先次序按标准的数学运算规则进行排列,目的是在应用中尽量减少圆括号. 例如 < 比 + 的优先级低,这样你就可以不用括号来写出表达式 x + y > 7.
但还有些情况必须使用括号.由于 ;比=的优先级低, Mathematicax = a ; b 当作 (x = a); b ,为了表示 x =( a ; b ),必须使用括号. 一般说来,应该尽量使用括号,当漏掉子括号时,Mathematica 会按另一种 方式执行,其后果大不一样.

Mathematica 中表达式的四种书写方式

Mathematica 中的多种运算,x + y 中的 + 是中缀运算,-p 中的-是前缀运算, 当你要输入表达式 f[x, y, ... ] 时,可以用中缀, 前缀和后缀格式.

这一后缀形式与 f[x + y] 等价

当输入一表达式后想加入一个函数 N 时,可以用后缀形式

有时用中缀形式更容易理解

应该注意 // 的优先级非常低,当把 是相对整个表达式的. 例如 x+y //ff[x+y] , 而不是 x+f[y].
前缀形式 @ 有相当高的优先级,如 f @ x + y 等价于 f[x] + y , 而不是 f[x + y]. f[x + y] 的前缀形式为 f @ (x + y).