是否附加到关联列表?
你好我在绞尽脑汁想如何使用关联列表。
我的目标是创建一个填充全局列表的函数。它需要接受assoc的名称和它将附加到其中的值。
例如,现有列表:
("blah1" (1 2 3 5)
"blah2" (4 3 2 1)
)我想将(4 6 7)添加到“blah1”列表中,(1 5)添加到“blah2”中,并将另一个列表添加为带有值(3 4 5)的“blah3”
因此最终结果是:
在javascript中,这是非常简单的:
var myList = {
blah1: ,
blah2:
};
function addToList (key val)
{
myList.push(val);
}
addToList("blah1", );
addToList("blah2", );
addToList("blah3", );
谁能帮忙吗。
非常感谢。 是否希望提示您输入新的/附加列表值,或者是否有其他来源? 不,没有提示,脚本的其他部分将提供它们,我需要一个用提供的值填充列表的函数 (defun addTListDemo(addvalues existinglist)
(foreach
valueaddvalues
(Setq existinglist
(if (setq AddorNew
(assoc (car value)
existinglist))
(subst (list (car AddorNew)
(append (cadr AddorNew)
(cadr value)))
AddorNew
existinglist)
(append existinglist (list value))
)
)
)
existinglist
)
(setq lst '(( "BLAH1" (1 2 3 5))("BLAH2" (4 3 2 1))))
( addtlistdemo '(("BLAH1" (4 6 7))("BLAH2" (1 5))("BLAH3" (3 4 5))) lst)
(("BLAH1" (1 2 3 5 4 6 7)) ("BLAH2" (4 3 2 1 1 5)) ("BLAH3" (3 4 5)))
个人
(defun addTListDemoi(addvalue existinglist)
(if (setq AddorNew (assoc (car addvalue) existinglist))
(subst (list (car AddorNew)
(append (cadr AddorNew)(cadr addvalue)))
AddorNew existinglist)
(append existinglist (list addvalue))
)
)
6
题外话@kaan27:超出PM配额/谁是原始作者/看不到链接上的图像/它做了什么/为什么不在黑板上发布请求? 非常感谢你!第二个例子正是我想要的。 很好,瓦诺姆,欢迎你。希望您能从演示代码中学习。
干杯
页:
[1]