2010-11-26 16 views
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)) 

की तरह एक सूची है और मैं (0 3 6) के सूचकांक खोजना चाहते हैं, वहाँ यह करने के लिए निर्मित एक समारोह है? POSITION तब काम नहीं कर रहा है जब खोज आइटम स्वयं एक सूची है।

उत्तर

13

hyperspec देखें।

 
(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 है जिस तरह से: स्थिति एक :test तर्क ले सकते हैं।

+0

उत्सुकता से, "परीक्षण कार्यों के नियम" के लिए FIND लिंक के लिए सीएलएचएस पृष्ठ, लेकिन स्थिति के लिए पृष्ठ नहीं है। यहां बताया गया है कि 'ईक्यूएल' का डिफॉल्ट दस्तावेज है: http://www.lispworks.com/documentation/HyperSpec/Body/17_ba.htm – Ken

+0

क्षमा करें, लेकिन इस कोड को चलाने के लिए मैं ड्रैक्रेट में कौन सी भाषा चुनना चाहूंगा @ Nietzche-jou –