Page 26 - AutoLISP и Visual LISP в среде AutoCAD
P. 26

(reverse список)
                      Возвращает список с элементами, переставленными в обратном порядке.
                      Пример:
                   (reverse '(1 2 3 4 5))            ;Возвращает (5 4 3 2 1)


                      (length список)
                      Возвращает число элементов в списке.
                      Пример:
                   (length '(1 2 3 4 5))          ; Возвращает 5

                      (append выражения)
                      Объединяет в один список выражения.
                      Пример:

                   (append '(A) '(B C) '(D))           ; Возвращает (A B C D)

                      (cons выражение список)
                      Добавляет в начало списка новый элемент, который может быть также и
                  выражением. Если выражение и список являются атомами, то cons образует
                  конструкцию,  известную  как  "точечная  пара". AutoLisp печатает  точку
                  между  первым  и  вторым  элементами.  Точечные  пары  занимают  меньше
                  места в памяти, чем обычные списки и можно использовать функцию cdr для
                  извлечения второго атома.
                      Пример:
                   (cons '(A) '(B C D))                  ; Возвращает ((A) B C D)
                   (cons (+ 2 3) '(4 3 2 1))             ; Возвращает (5 4 3 2 1)
                   (cons 0 "LINE")                       ; Возвращает (0 . "LINE")

                      (assoc элемент_списка список)
                      Извлекает из списка элемент по ключу элемент_списка.
                      Пример:

                  (assoc 0 '((0 . "ARC") (5 . "AC3") (67 . 0) (8 . "0")))
                  ; Возвращает       (0 . "ARC")
                  (assoc 5 '((0 . "ARC") (5 . "AC3") (67 . 0) (8 . "0")))
                  ; Возвращает  (5 . "AC3")
                  (assoc 67 '((0 . "ARC") (5 . "AC3") (67 . 0) (8 . "0")))
                  ; Возвращает   (67 . 0)


                      (subst новый_элемент старый_элемент список)
                      Возвращает  копию  исходного  списка  с  заменой  всех  найденных
                  подсписков старый_элемент на новый_элемент.  Если  вхождений  не
                  обнаружено, subs возвращает копию старого списка ( не nil).
                      Пример:
                  (subst '(8 . "OSI") '(8 . "0") '((0 . "ARC") (67 . 0) (8 . "0")))
                  ; Возвращает  ((0 . "ARC") (67 . 0) (8 . "OSI"))





                                                                                                             25
   21   22   23   24   25   26   27   28   29   30   31