即
的Split版本的形式Split[list,test]
,其中test
是一个函数,它变量。所以
#1 =!= 0 && #2 =!= 0 &
是一个双变量纯函数,其中#1
和#2
是变量名称的简写。
一般而言,Split
将采取列表并返回分区为“相同的”元素的连续运行相同的列表。所以,如果你的列表是list={0,0,2,2,3,4,4,5,5,5,7}
,然后Split[list]
产生
{{0,0}, {2,2}, {3}, {4,4}, {5,5,5}, {7}}
但也许你要定义意味着什么两样东西是“相同的”不同。这就是通用Split[list,test]
函数的功能。这里的test
函数是一个函数,它接受两个参数,如果它们相同则返回true; test
功能是您的测试是否或两件事是相同的。例如,您提供的测试功能
#1 =!= 0 && #2 =!= 0 &
如果两个元素均为非零值,则返回true。因此,如果Split
函数是零运行的元素,或者它们是非运行的运行,那么它们将对这些元素进行分组。另一个例子,假设你想说两个整数是相同的,如果它们具有相同的奇偶性(偶数或奇数)。然后将拆分功能将
Split[list, Mod[#1,2] == Mod[#2,2]]
这对于列表我定义将返回
{{0,0,2,2}, {3}, {4,4}, {5,5,5,7}}
插槽术语https://reference.wolfram.com/language/ref/Slot.html – agentp