我想將一個列表對轉換爲兩個列表 - 首先包含對的第一個元素,第二個包含對的第二個元素。如何在SWI-Prolog中使用foreach
E.g.
[['Test1', 'US'], ['Test1', 'France'], ['Test2', 'German']]
應該產生
List1 = ['Test1', 'Test1', 'Test2']
List2 = ['US', 'France', 'German']
我試圖用foreach
並想出這個功能:
testfor:-
List = [['Test1', 'US'], ['Test1', 'France'], ['Test2', 'German']],
(
foreach(X,List) do
X=[F,S],
append([F],[],List1),
append([S],[],List2)
),
writeln(List1).
它不工作,我很困惑。我在哪裏犯了一個錯誤?當然,您可以使用您的方法幫助我實現此功能(即「不要使用foreach
」)。