检查一个元素是否等于OCaml中列表中的任何元素?

seb*_*ter 2 ocaml list

所以我有这个整体列表,让我们说它是

let a = [14, 22, 47] in
Run Code Online (Sandbox Code Playgroud)

我想要做的是检查一些其他标识符是否等于列表中的任何元素.我显然可以这样做:

if (x = 14 || x = 22 || x = 47) then do something
Run Code Online (Sandbox Code Playgroud)

但这对于更大的名单来说似乎很麻烦.在OCaml中有更简单的方法吗?我知道Python有"in"运算符.

Jef*_*eld 5

$ ocaml
        OCaml version 4.01.0

# List.mem;;
- : 'a -> 'a list -> bool = <fun>
# List.mem 3 [1;2;3];;
- : bool = true
# List.mem 8 [1;2;3];;
- : bool = false
Run Code Online (Sandbox Code Playgroud)

(我建议阅读List模块中的函数列表.你想熟悉它们.)