Wolfram Computation Meets Knowledge

Wolfram 语言:
快速编程入门

显示附加备注:
全部选择 
开始使用

符号表达式 观看视频

Wolfram 语言中的一切都是符号表达式.

Java 程序员备注:

符号表达式为以统一的树形结构来表示数据提供了非常通用的方法. 其在编程中添加了高级的灵活性,允许对结构和内容同时进行操作. 尽管基本性能可以通过使用第三方程序库实现,但 Java 并不拥有符号功能.

Python 程序员备注:

Wolfram 语言的符号表达式提供了一种极其简单的方法在统一的树形结构中表示数据. 其在编程中加入了高等级的自由度,允许对结构和内容进行操作. Python 没有内置的符号功能.

所有符号表达式都具有相同的基本结构:head[arguments]

Java 程序员备注:

Wolfram 语言表达式的 head 确定数据或表示的操作类型. 与在 Java 中的静态类型不同,Wolfram 语言的开头在计算中可能会被转换.

Python 程序员备注:

Wolfram 语言表达式的 head 确定数据或表示的操作类型,且可在计算中随时被转换. 所有 Python 对象都有标注的 class 且不能被更改.


函数的参数可以是任何符号表达式:

In[1]:=1
EdgeDetect[\!\(\* Graphics3DBox[SphereBox[{0, 0, 0}], ImageSize->{101.28125, Automatic}, ViewPoint->{1.3380550962130968`, -2.4157167423337023`, 1.9554848964660412`}, ViewVertical->{0.010787606954750626`, -0.012563066244060768`, 0.9998628890516625}]\)]
Out[1]=1

Wolfram 语言是完全符号式,因此 “未定义变量” 总保持原样:

In[1]:=1
x
Out[1]=1

Java 程序员备注:

未初始化的 Java 对象和基元通常拥有默认值 null0false,且试图使用这类变量会导致产生 NullPointerException 或其他错误.

Python 程序员备注:

Wolfram 语言的符号表达式让程序员可以在其计算中不间断地将未定义变量作为符号使用. 未赋值的变量在 Python 中被认为是 “undefined”,且试图使用未定义变量会造成产生 NameError.


FullForm 总是显示底层结构.
Head 总是给出一个表达式Length 则给出参数数目.


© 2019 Wolfram. All rights reserved.