通过索引操作列表
| Part[list,spec] 或 list[[spec]] | 列表的一个或多个部分 |
| Part[list,spec1,spec2,...] 或 list[[spec1,spec2,...]] | 嵌套列表的一个或多个部分 |
| n | 开头的第 n 个部分 |
| -n | 末尾的第 n 个部分 |
| {i1,i2,...} | 由部分组成的列表 |
| m;;n | 第 m 部分到第 n 部分 |
| All | 所有部分 |
获取列表的部分.
| Out[1]= |  |
| Out[3]= |  |
| Out[4]= |  |
| Out[5]= |  |
这里给出

的前两个部分.
| Out[6]= |  |
| Out[7]= |  |
| Out[8]= |  |
| Out[9]= |  |
用户总数通过类似
这样的赋值来重设列表的一个或多个部分.
这里重设

的第一部分和第二部分.
| Out[10]= |  |
这是

的形式.
| Out[11]= |  |
这里把第一部分重设为

,并且把第三部分重设为

.
| Out[12]= |  |
这里把第一部分和第三部分都重设为

.
| Out[13]= |  |
这里重新存储

原先的形式.
这里重设使用

指定的部分.
| Out[15]= |  |
| Out[16]= |  |
有时,把一个嵌套列表想象为在空间的展开是有益的,这时,每个元素都是在由其索引所提供的坐标位置上. 对于
,存在直接的几何解释. 如果一个给定的
是一个单一的整数,那么它表示在第 k
维提取单一的分块,而如果它是一个列表的话,它表示提取平行分块的列表. 那么
的最终结果是在每个连续纬度上分块所得到的元素集合.
Out[17]//TableForm= |
| |  |
Out[18]//TableForm= |
| |  |
Part 被设置使得提取嵌套列表的结构分片更为简单. 然而,有时用户可能想要选出由单一部分组成的任意集合. 也可以使用 Extract 方便地实现.
| Part[list,{i1,i2,...}] | 列表  |
| Extract[list,{i1,i2,...}] | 元素  |
| Part[list,spec1,spec2,...] | 由连续分片指定的部分 |
| Extract[list,{{i1,i2,...},{j1,j2,...},...}] | 单一部分 的列表 |
获取分片与获取单一部分组成的列表的比较.
| Out[19]= |  |
Extract 的重要特征是它对部分位置的列表采取与函数如 Position 返回的形式相同的形式.
这里给出

中位置的列表.
| Out[21]= |  |
| Out[22]= |  |
| Take[list,spec] | 选出列表的指定部分 |
| Drop[list,spec] | 丢弃列表的指定部分 |
| Take[list,spec1,spec2,...], Drop[list,spec1,spec2,...] | 在嵌套列表的每一层选出或丢弃指定部分 |
| n | 前 n 个元素 |
| -n | 最后 n 个元素 |
| {n} | 仅含元素 n |
| {m,n} | 元素 m 到 n (闭区间) |
| {m,n,s} | 元素 m 到 n,步长为 s |
| All | 所有部分 |
| None | 没有部分 |
在列表中选出和丢弃元素序列.
| Out[23]= |  |
| Out[24]= |  |
与 Part 很相似,Take 和 Drop 可以视为在嵌套列表的连续层中选出块的序列,用户可以使用 Take 和 Drop 来对数组中的元素块进行操作.
Out[25]//TableForm= |
| |  |
Out[26]//TableForm= |
| |  |
Out[27]//TableForm= |
| |  |
Out[28]//TableForm= |
| |  |
| Prepend[list,elem] | 在 list 的开头加入 element |
| Append[list,elem] | 在 list 的末尾加入 element |
| Insert[list,elem,i] | 在位置 i 插入 element |
| Insert[list,elem,{i,j,...}] | 在位置 插入 |
| Delete[list,i] | 在位置 i 删除元素 |
| Delete[list,{i,j,...}] | 在位置 删除 |
在列表中加入和删除元素.
这里令列表的第2,1位置上的元素为

.
| Out[29]= |  |
| Out[30]= |  |
| ReplacePart[list,i->new] | 用 new 替换 list 中位置 i 上的元素 |
| ReplacePart[list,{i,j,...}->new] | 用 new 替换 |
| ReplacePart[list,{i1->new1,i2->new2,...}] | 用 替换位置 上的部分 |
| ReplacePart[list,{{i1,j1,...}->new1,...}] | 用 替换位置 上的部分 |
| ReplacePart[list,{{i1,j1,...},...}->new] | 用 new 替换所有部分 |
替换列表的部分.
这里使用

取代矩阵的第3个元素.
| Out[31]= |  |
这里取代列表的第一和第四部分. 注意在指定多个部分来取代的情况下,需要双列表.
| Out[32]= |  |
| Out[33]= |  |
这里使用

取代矩阵的2,2部分.
| Out[34]= |  |
理解 ReplacePart 总是创建一个新的列表是重要的. 它并不像
那样改变已经赋给一个符号的列表.
这里把值的列表赋于

.
| Out[35]= |  |
这里给出列表的拷贝,其中第三个元素由

取代.
| Out[36]= |  |

的值没有被更改.
| Out[37]= |  |