即
的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