我想问一下是否可以断言列表而不是单数术语?例如,我尝试了以下方法:
assert(user_chosen_fruits([Grapes, Apples, Peaches])).
但是,当我使用user_chosen_fruits(X).
查询时,它返回以下内容:
X = [_4872, _4878, _4884].
我错过了一些输出处理,还是我的断言完全错误?我不确定是否可以断言列表。感谢您的帮助。
您要声明variables的列表,因此调用user_chosen_fruits/1
时将获得绑定。请尝试:
| ?- assertz(user_chosen_fruits(['Grapes', 'Apples', 'Peaches'])).
P.S。 assert/1
谓词已弃用。而是使用标准的asserta/1
或assertz/1
谓词。