Как распечатать список LISP рядом? - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть два списка как

(defvar product-list (list "apple" "banana") )
(defvar price-list (list 5 10) )

Я хочу напечатать это как

яблоко: 5

банан: 10

как это сделать?

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Нет loop:

(format nil "~{~{~A~T:~T~A~}~^~%~}"
        (mapcar
         (function list)
         (list "apple" "banana")
         (list 5 10)))

Возврат:

"apple : 5
banana : 10"

справка:

Несколько рецептов FORMAT: http://www.gigamonkeys.com/book/a-few-format-recipes.html

0 голосов
/ 07 сентября 2018

Вы можете использовать цикл, например:

(defvar product-list (list "apple" "banana") )
(defvar price-list (list 5 10) )

(loop for product in product-list
      for price in price-list
      do (format t "~A : ~A~%"
                 product
                 price))
...