Prolog 如何在无序列表中逐个返回元素,而不是一次返回所有元素?

Prolog 如何在无序列表中逐个返回元素,而不是一次返回所有元素?,prolog,Prolog,例如,如果我有这样的代码: randlist(X):- random_permutation([1,2,3,4,5,6,7,8],X). randlist(X). 然后像这样查阅: randlist(X):- random_permutation([1,2,3,4,5,6,7,8],X). randlist(X). 它将返回这样的答案(例如),其中列表被洗牌: X = [7, 6, 8, 2, 4, 3, 5, 1]. 是否有方法使用“;”分别返回每个元素以手动显示它们 像这样: X

例如,如果我有这样的代码:

randlist(X):- random_permutation([1,2,3,4,5,6,7,8],X).
randlist(X).
然后像这样查阅:

randlist(X):- random_permutation([1,2,3,4,5,6,7,8],X).
randlist(X).
它将返回这样的答案(例如),其中列表被洗牌:

X = [7, 6, 8, 2, 4, 3, 5, 1].
是否有方法使用“;”分别返回每个元素以手动显示它们

像这样:

X = 7;
X = 6;
X = 8;
X = 2;
X = 4;
X = 3;
X = 5;
X = 1
编辑:请记住,每次进行咨询时,列表都会被重新排列。

成员(X、[7,6,8,2,4,3,5,1])。是的,
randlist(_L),成员(X,_L)。