6
如果我有这样的列表中获取列表索引和Lisp
((0 1 2) (3 4 5) (6 7 8) (0 3 6) (1 3 7) (2 4 8) (0 4 8) (2 4 6))
名单,我想找到的(0 3 6)
的指标,有没有内置函数来做到这一点?当搜索项目本身是一个列表时,POSITION
似乎不起作用。
如果我有这样的列表中获取列表索引和Lisp
((0 1 2) (3 4 5) (6 7 8) (0 3 6) (1 3 7) (2 4 8) (0 4 8) (2 4 6))
名单,我想找到的(0 3 6)
的指标,有没有内置函数来做到这一点?当搜索项目本身是一个列表时,POSITION
似乎不起作用。
请参阅hyperspec。位置可采取:test
说法:
(position '(0 3 6) '((0 1 2) (3 4 5) (6 7 8) (0 3 6) (1 3 7) (2 4 8) (0 4 8) (2 4 6)) :test #'equal)) 3
的位置(和其他操作序列)默认的测试是EQL,顺便说一句。
奇怪的是,FIND的CLHS页面链接到“关于测试函数的规则”,但是POSITION的页面没有。这里是`EQL`的默认记录:http://www.lispworks.com/documentation/HyperSpec/Body/17_ba.htm – Ken 2010-11-27 00:30:53