Ocaml 使用list.map返回奇数索引列表

Ocaml 使用list.map返回奇数索引列表,ocaml,Ocaml,如果我有一个列表[1;2;3;4;5;6],并且我想返回一个奇数索引[2;4;6]的列表,我可以用list.map和一些函数来实现吗?我很难弄明白这一点。List.map所做的是返回列表中每个元素的函数(称之为fsay)。对于输入列表的每个元素x,它在结果列表中返回fx。因此,返回的列表始终与传递的列表长度相同 由于您需要较短的列表,因此不能使用list.map 正如@UnholySheep所说,您可以使用List.filteri。它专门用于根据列表中的某些元素在列表中的位置仅返回这些元素。由于

如果我有一个列表[1;2;3;4;5;6],并且我想返回一个奇数索引[2;4;6]的列表,我可以用list.map和一些函数来实现吗?我很难弄明白这一点。

List.map所做的是返回列表中每个元素的函数(称之为
f
say)。对于输入列表的每个元素
x
,它在结果列表中返回
fx
。因此,返回的列表始终与传递的列表长度相同

由于您需要较短的列表,因此不能使用
list.map

正如@UnholySheep所说,您可以使用
List.filteri
。它专门用于根据列表中的某些元素在列表中的位置仅返回这些元素。

由于要筛选列表,可能需要使用
list.filter
list.filteri