0
我在序言中有一個包含多個項目的列表。我需要對這個列表的內容進行「規範化」,並將結果寫入一個新列表。但是我仍然有這個問題。 下面的代碼顯示我是如何做的:如何將項目添加到序言中的列表
normalizeLists(SourceList, DestList) :-
% get all the member of the source list, one by one
member(Item, SourceList),
% normalize the item
normalizeItem(Item, NormItem),
% add the normalize Item to the Destination List (it was set [] at beginning)
append(NormItem, DestList, DestList).
的問題是在追加謂語。我想這是因爲在序言中,我不能命令式編程做這樣的事情,如:
DestList = DestList + NormItem,
但我怎麼可以這樣做,在Prolog的?或者如果我的方法不正確,我該如何編寫序言代碼來解決這類問題。
任何幫助真的很感激。
乾杯在Prolog中
CapelliC嗨。它工作正常。謝謝。順便說一句,是的我的序言支持地圖列表。你能分享一些關於如何在maplist中做的更多信息嗎?謝謝 –
我嘗試了maplist(只是嘗試你的建議),它的效果令人驚訝。減少不必要的代碼。謝謝 –