編輯:我的問題最初是「是否有一個標準的名稱爲一個函數列出清單,但只有一個深度?」,但查克的答案是措辭更接近我真正想問的,所以我改名它。不過,這三個答案對我來說都很有用。謝謝。是否有一個函數的通用名稱,該函數接受列表並返回包含這些列表內容的單個列表?
'flatten'似乎是一個被廣泛接受的名字,它是一個函數,它接受一棵樹並建立一個原子列表,然而它們嵌套的深度很大,但是一個函數在一個級別之後就會停止?所以((1 2)((3 4)(5 6))(7 8))「一些」到(1 2(3 4)(5 6)7 8)。 「某些東西」在多種語言/庫中有一個共同的名字嗎?
對這個問題的答案:
Flattening a shallow list in Python
表明,「鏈」可能是一個很好的猜測,但它足以常見的是「標準」?
但是,不要將這兩個列表作爲單獨的參數加入,而不包含在單個列表中?所以我可以做(append(1 2)((3 4)(5 6))(7 8))並返回(1 2(3 4)(5 6)7 8),但(append((1 2 )((3 4)(5 6))(7 8)))將返回((1 2)((3 4)(5 6))(7 8)),對嗎? – jtolle 2009-12-09 16:49:13
是的,但您可以在APPLY中使用_spreadable參數list_,或者使用REDUCE逐步完成。 – Svante 2009-12-09 16:52:45
對。我所要求的是一個通用名稱可以用於一個函數(應用#'追加列表列表)或(減少#'追加列表列表)。 'concat','join'或'chain'似乎都是合理的。 – jtolle 2009-12-09 17:45:23