1

我有两个列表列表,可以这样概括:

a = {{1}, {2}, {3}};
b = {{4}, {5}, {6}};

我想将它们组合成一个列表,每个元素都在同一级别,ala:

    {{1}, {2}, {3}, {4}, {5}, {6}}

除非我一辈子都做不到。最明显的事情是这样的:

In[537]:= Append[a, b]
Out[537]= {{1}, {2}, {3}, {{4}, {5}, {6}}}

这不是我想要的。Append 文档似乎没有涵盖这样的案例,而且我无法得到任何 Appending 和 Flattening 的工作。我想我可以编写一个 for 循环并继续添加到一个空列表中,但天哪,这很笨拙。必须有一种优雅的方式来做到这一点?

4

2 回答 2

4

更改您的代码:

In[537]:= Append[a, b]

到:

In[537]:= Join[a, b]
于 2012-04-18T21:22:42.570 回答
1

这不是最佳方式(PinnyM 提到了最佳方式),但您可以考虑

Flatten[Append[a,b]]

或者干脆

Append[a,b]//Flatten

这给出了相同的结果。

于 2012-04-19T09:55:42.870 回答