我需要使用prolog将所有列表元素置于列表的外部。 ['1','2','3',a,b,c]
成为X='1','2','3',a,b,c
我需要如上所示的结果X.获取序言中的所有列表元素
是否可能得到结果?
我需要使用prolog将所有列表元素置于列表的外部。 ['1','2','3',a,b,c]
成为X='1','2','3',a,b,c
我需要如上所示的结果X.获取序言中的所有列表元素
是否可能得到结果?
这将直接显示您要求的内容(我假设您严格按照显示目的对结果感兴趣)。
print_list(L) :-
write('X='),
print_list_aux(L), !.
print_list_aux([H1,H2|T]) :-
print(H1),
write(','),
print_list_aux([H2|T]).
print_list_aux([X]) :-
print(X),
nl.
print_list_aux([]) :- nl.
例子:
?- print_list(['1', '2', a, b]).
X='1','2',a,b
true.
?-
如果您使用的write/1
代替print/1
,可以消除上的数字引号的输出,因此这将是:X=1,2,a,b
。
咦?你希望多个值与单个变量统一,但不是一个列表?那个怎么样? –