运营商是,列表

gal*_*pro 2 prolog

我用这个函数:

f(V):-V is [1,2,3,4,5].
Run Code Online (Sandbox Code Playgroud)

但是我收到一个错误:

ERROR: '.'/2: Type error: `[]' expected, found `[2,3,4,5]' ("x" must hold one character)
Run Code Online (Sandbox Code Playgroud)

需要修复什么?

gus*_*bro 5

is/2 中缀运算符用于评估算术表达式.

您似乎想要将变量V与不是算术表达式的术语(在本例中为列表)统一,因此您应该使用等于operator(=).

f(V):- V = [1,2,3,4,5].
Run Code Online (Sandbox Code Playgroud)

或者直接统一在程序的头部:

f([1,2,3,4,5]).
Run Code Online (Sandbox Code Playgroud)