我有這個:
streams=[[1,2,2,4],[2,1,4,2],[3,4,1,3],[4,3,3,1]]
串列中的數字都是原子,我需要將它們全部反轉為整數。流應如下所示:
streams=[[1,2,2,4],[2,1,4,2],[3,4,1,3],[4,3,3,1]]
但是對于所有格式為“整數”而不是“原子”的數字,有人可以解釋一下如何將這些數字轉換為整數嗎?
uj5u.com熱心網友回復:
要在 atom 和 number 之間進行轉換,您可以使用內置謂詞atom_number/2:
?- atom_number(Atom, 1).
Atom = '1'.
?- atom_number('1', Number).
Number = 1.
使用maplist/3,您可以將該轉換應用于atom 串列的所有元素:
?- maplist(atom_number, ['1','2','2','3'], Numbers).
Numbers = [1, 2, 2, 3].
要將該轉換應用于串列串列中的所有原子,您可以執行以下操作:
?- maplist(maplist(atom_number), [['1','2'],['2','1','4'],['3'],['4','1']], ListOfLists).
ListOfLists = [[1, 2], [2, 1, 4], [3], [4, 1]].
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/413373.html
標籤:
