是否可以声明清单?

问题描述 投票:1回答:1

我想问一下是否可以断言列表而不是单数术语?例如,我尝试了以下方法:

assert(user_chosen_fruits([Grapes, Apples, Peaches])).

但是,当我使用user_chosen_fruits(X).查询时,它返回以下内容:

X = [_4872, _4878, _4884].

我错过了一些输出处理,还是我的断言完全错误?我不确定是否可以断言列表。感谢您的帮助。

prolog swi-prolog
1个回答
1
投票

您要声明variables的列表,因此调用user_chosen_fruits/1时将获得绑定。请尝试:

| ?- assertz(user_chosen_fruits(['Grapes', 'Apples', 'Peaches'])).

P.S。 assert/1谓词已弃用。而是使用标准的asserta/1assertz/1谓词。

© www.soinside.com 2019 - 2024. All rights reserved.