mac*_*ian 0 components haskell extract list
我有以下列表:
[[a,b,c],
[d,e,f],
[g,h,i]]
Run Code Online (Sandbox Code Playgroud)
并希望获得以下内容(例如,如果我在列表中提取列表的第0个元素):
[[a],[d],[g]]
Run Code Online (Sandbox Code Playgroud)
我已经能够为一个元素(例如([[a,b,c],[d,e,f],[g,h,i]])!!0!!0 = a)做这个,但我似乎无法使该函数适用于该列中的所有元素.
您已经知道可以使用!! i获取i列表的第th个元素.那么如何i在列表列表中获取每个列表的第th个元素?通过应用(!! i)列表列表中的每个列表.你是怎么做到的?通过使用map可以将任何函数应用于列表中的每个元素.
因此,通过使用map,(!! i)我们得到一个包含i每行第th列的列表,这将[a, d, g]在您的示例中.从那以后,您可以轻松地获得预期的输出.
虽然如果你想逐列访问你的矩阵,你可能最好转置矩阵一次然后使用转置矩阵.