List
{e1,e2,…}
是一个元素列表.
更多信息
- 列表是代表表达式集合的非常一般的对象.
- 有属性 Listable 的函数自动线性作用于列表,使得它们分别对每个列表元素作用. 大多数内置数学函数都是Listable.
- {a,b,c} 表示一个向量.
- {{a,b},{c,d}} 表示一个矩阵.
- 嵌套列表可用于表示张量.
- 如果 Nothing 出现在列表中,将被自动移除.
- Parallelize[{e1,e2,…}] 计算并行元素 e1, e2, …. »
背景
- List 是非常一般的用于表示一组表达式的结构,即列表. 列表可以有任意的长度或深度. 表达式 List[a,b,c,…] 通常都用简化语法 {a,b,c,…} 的形式输入和显示. 列表在 Wolfram 语言中特别重要,因为该语言并没有显式定义向量、矩阵、张量等对象而是用(可能嵌套的)列表来表示这些结构. 例如,{a,b,c,…} 可以表示一个向量,{{a,b},{c,d}} 可以表示一个矩阵,等等.
- 带 Listable 属性的函数会自动逐项作用于列表,也就是说它们会分别作用在每个列表元素上. 大多数内建的数学函数都是带有 Listable 属性的.
- Apply 会把 List(或任意其它表达式)的头部换成新的,而 Map 会把函数应用到 List(或任意其它表达式)第一层的每个元素上.
- SparseArray 可被用于有效的表示和计算具有常数(常常是 0)“背景”值的列表(或嵌套列表). SparseArray 可用 Normal 扩展成全尺寸的 List.
- 列表中的值可以用 Set 有效的作保持位置的修改,即 list[[k]]=newValue. 访问、插入或删除列表中元素的常见操作包括 Part、Take、Drop、Extract、Insert、Delete、PadLeft/PadRight、Append/AppendTo 和 Prepend/PrependTo.
- 值的扁平列表(即一个向量)可以用 ListPlot 绘制,而用矩形的列表之列表形式给出的值的阵列可以用 ArrayPlot、MatrixPlot、ListDensityPlot,或相关函数绘制. 其它常被应用于列表的重要且有用的函数包括 Total、Accumulate、Mean 和 ListConvolve.
- Association 提供了符号化索引列表、关联阵列、词典、哈希表、结构体、以及各种强大的数据结构的推广,称为关联. 如此命名 Association 是因为它把键和值关联了起来,从而可以进行高效的查找及修改,即使在它有百万量级的元素的情况下也是如此.
- 列表可以用 Sequence 转换成一串表达式. 这可能特别有用,因为在 Wolfram 语言中函数通常是有一串参数而不是一个参数的列表,所以使用 Sequence 可以让其它函数也能方便的使用列表形式的数据.
范例
打开所有单元关闭所有单元范围 (31)
向量、矩阵和其它数组的表示 (4)
构造列表 (5)
可列表函数 (4)
列表元素上的运算 (5)
合并列表 (4)
有限集列表 (2)
规则列表 (2)
数据列表 (3)
属性和关系 (6)
与所有 Wolfram 语言表达式一样,列表是 1 索引的:
在大多数格式类型(包括 InputForm)中,列表显示为 {…}:
FullForm 像任何其他表达式一样对待列表,将它们显示为 List[…]:
这清楚地表明列表有标头 List:
Sequence 自动拼接成列表:
这是 Sequence 一般行为的一个特例:
Nothing 会自动从列表中删除:
一个 SparseArray 表示一个列表:
它们是 Equal 的:
Parallelize[list] 并行计算 list 的元素:
Wolfram Research (1988),List,Wolfram 语言函数,https://reference.wolfram.com/language/ref/List.html (更新于 2014 年).
文本
Wolfram Research (1988),List,Wolfram 语言函数,https://reference.wolfram.com/language/ref/List.html (更新于 2014 年).
CMS
Wolfram 语言. 1988. "List." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2014. https://reference.wolfram.com/language/ref/List.html.
APA
Wolfram 语言. (1988). List. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/List.html 年