我有一个清单:
[(HOUSE, 1), (FRAME, 2), (WATER, 3), (WIND, 4), (CREST, 5)]
Run Code Online (Sandbox Code Playgroud)
我想像这样反转它:
[(CREST, 5), (WIND, 4), (WATER, 3), (FRAME, 2), (HOUSE, 1)]
Run Code Online (Sandbox Code Playgroud)
我怎么做?
一位朋友告诉我,有一种方法可以反转它,但首先你需要反转元组,因为有一个函数只能"查看"第一个要排序的元素,而且因为我按照单词之后的数字排序,我需要把数字放在首位.
例: (5, CREST)
我真的需要这样做吗?如果我这样做,接下来我该怎么做?因为我已经有一个函数可以反转元组的顺序.现在我需要反转整个列表.
Obs.:列表是用户输入.
如果有办法在不反转元组的情况下执行此操作,请告诉我.也许我正试图以一种困难的方式做一件简单的事情.
请解释代码如何以简单的方式工作,因为我是初学者.
你可以使用reverse(从中导入 Prelude):
reverse [(HOUSE, 1), (FRAME, 2), (WATER, 3), (WIND, 4), (CREST, 5)]
-- [(CREST, 5),(WIND, 4),(WATER, 3),(FRAME, 2),(HOUSE, 1)]
Run Code Online (Sandbox Code Playgroud)
没有必要对列表中的元组进行排序和/或反转.