我试图遍历列表列表并对每个列表执行操作。
如果我有一个像
这样的清单[[("vT",T),("vF",T)],[("vT",T),("vF",F)],[("vT",F),("vF",T)],[("vT",T),("vF",M)],[("vT",M),("vF",T)],[("vT",M),("vF",M)],[("vT",F),("vF",F)],[("vT",F),("vF",M)],[("vT",M),("vF",F)]]
如何创建一个设置x = [("vT",T),("vF",T)]
的函数,以便我可以使用此x来执行操作,然后设置x = [("vT",T),("vF",F)]
等等,然后让每个函数的答案都返回列表?
答案 0 :(得分:2)
您可以使用map
将功能应用于列表的每个元素 - 这是一个完整的示例:
data Tribool = T | F | M deriving Show
my_data = [
[("vT",T),("vF",T)],
[("vT",T),("vF",F)],
[("vT",F),("vF",T)],
[("vT",T),("vF",M)],
[("vT",M),("vF",T)],
[("vT",M),("vF",M)],
[("vT",F),("vF",F)],
[("vT",F),("vF",M)],
[("vT",M),("vF",F)]
]
f x = reverse x -- example function
processed_data = map f my_data