【发布时间】:2020-05-21 21:02:25
【问题描述】:
我正在尝试过滤对列表并返回一个仅包含每对的第一个元素的新列表。输入/输出应该是这样的:
input = [('A', 3); ('B', 2); ('D', 1)]
output = ['A'; 'B'; 'D']
我目前的代码是这样的:
let rec trimList l = function
| [] -> []
| head::tail -> let l' = [fst head] @ trimList List.tl l;;
但我收到以下错误:
Line 3, characters 59-61:
3 | | head::tail -> let l' = [fst (head)] @ trimList List.tl l;;
^^
Error: Syntax error
我不知道为什么这不起作用。我知道这很简单,但我是 OCaml 的新手。 任何帮助将不胜感激,谢谢。
【问题讨论】: