来源微信公众号:icdlab,关注公众号获取更多信息
List元素删除
remove
- 函数功能:
移除输入list中所有与指定值相同的元素,原list不变 - 函数用法:
remove( g_x l_arg ) ;=> l_result - 函数输入:
函数输入g_x为待删除元素值,l_arg为待处理列表; - 函数输出:
函数输出一个将l_arg中g_x删除的新的列表; - 使用实例:
remove( 3 '( 1 2 3 4 5 ) ) ;=> ( 1 2 4 5 ) - 函数说明:
remove函数不会改变输入list变量的值
remd
- 函数功能:
移除输入list中所有与指定值相同的元素,原list被改变 - 函数用法:
remd( g_x l_arg ) => l_result - 函数输入:
函数输入g_x为待删除元素值,l_arg为待处理列表; - 函数输出:
函数实现将l_arg中的元素g_x删除操作,原l_arg将会被改变 - 使用实例:
icdList = '(1 2 3 4)
remd(1 icdList) ; => (2 3 4)
icdList ; => (2 3 4)
removeListDuplicates
- 函数用法:
removeListDuplicates( l_list ) ;=> l_newList - 使用实例:
removeListDuplicates("a" 1 "a" 2 "a" 3 "a" 4) ;=>("a" 1 2 3 4) - 函数说明:
removeListDuplicates函数不改变原list
List元素替换
rplaca
- 函数功能:
将输入list中的第一个元素替换为指定值,原list改变 - 函数用法:
rplaca( l_arg1 g_arg2 ) ;=> l_result - 函数输入:
函数输入l_agr1为待操作列表,g_arg2为替换值 - 函数输出:
函数实现将原列表的第一个元素替换为指定值操作 - 使用实例:
x = '(a b c)
rplaca( x 'd ) => (d b c)
x => (d b c)
rplacd
- 函数功能:
将列表l_arg1中出第一个元素以外的其他元素替换为l_arg2中的元素,l_arg1列表改变 - 函数用法:
rplacd( l_arg1 l_arg2 ) ;=> l_result - 函数输入:
函数输入为两个列表,l_arg1为待修改列表,l_arg2为待替换的元素值 - 函数输出:
函数将l_arg1中除第一个元素以外的其他元素替换为l_arg2中的元素 - 使用实例:
x = '(a b c)
rplacd( x '(d e f)) ;=> (a d e f)
x ;=> (a d e f)
setcar
- 函数功能:
将输入list中的第一个元素替换为指定值,原list改变,与函数rplaca功能等同 - 函数用法:
setcar( l_arg1 g_arg2 ) ;=> l_result - 函数输入:
函数输入l_agr1为待操作列表,g_arg2为替换值 - 函数输出:
函数实现将原列表的第一个元素替换为指定值操作 - 使用实例:
x = '(a b c)
setcar( x 'd ) => (d b c)
x => (d b c)
setcdr
- 函数功能:
函数实现将列表l_arg1中出第一个元素以外的其他元素替换为l_arg2中的元素,l_arg1列表改变,功能与函数rplacd等同 - 函数用法:
setcdr( l_arg1 l_arg2 ) ;=> l_result - 函数输入:
函数输入为两个列表,l_arg1为待修改列表,l_arg2为待替换的元素值 - 函数输出:
函数实现l_arg1中除第一个元素以外的其他元素替换 - 使用实例:
x = '(a b c)
setcdr( x '(d e f)) ;=> (a d e f)
x ;=> (a d e f)
List元素排序
reverse
- 函数功能:
函数输出一个新的list,新的list将列表中的所有元素倒序排列,函数不改变原list值 - 函数用法:
reverse( l_arg ) ;=> l_result - 函数输出:
函数输出为一个新的列表,列表元素为倒序排列 - 使用实例:
reverse( '(1 2 3) ) ;=> (3 2 1)
reverse( '(a b (c d) e) ) ;=> '(e (c d) b a)
sort
- 函数功能:
函数将输入列表按指定条件排序,如果指定条件为nil则按字母顺序排序 - 函数用法:
sort( l_data u_comparefn ) ;=> l_result - 函数输入:
函数输入l_data为待排序列表,函数u_comparefn为对比函数 - 函数输出:
函数输出为l_data经过排序之后的列表 - 使用实例:
y = '(c a d b)
sort(y nil) ;=> (a b c d)
y ;=> (a b c d)
免责声明:
1,本公众号主要是交流学习IC设计知识,部分素材源于网络,若有侵权,作者会第一时间修改删除;
2,本公众号标明原创的文章欢迎转载并注明出处;
3,本公众号文章中出现的脚本仅供学习之用,作者不对其他任何个人或组织在使用脚本过程中产生的任何纠纷负责;
4,本公众号的主体为个人,发表文章纯属个人交流学习行为,文章的观点也属个人观点,与作者曾经任职或者正在任职的公司、其他个人或组织没有任何关系;
5,本公众号文章为个人撰写,错误和疏漏之处在所难免,希望大家指正;
6,本公众号发表的文章依赖各种软件,作者所获取的软件仅供学习交流之用,若有侵权,作者将配合删除