简单LISP问题

简单LISP问题,lisp,common-lisp,Lisp,Common Lisp,我只是在学习LISP,在做以下事情时遇到困难: ; return ":h :i" (defun get-char() (loop for char across "ab" collect (concatenate 'string ":" (string char)))) ; plist (defun get-list() (list :a "1" :b "2")) ; I cannot get this to work ; <-- returns all nu

我只是在学习LISP,在做以下事情时遇到困难:

; return ":h :i"
(defun get-char() 
  (loop for char across "ab" 
        collect (concatenate 'string ":" (string char))))

; plist
(defun get-list() (list :a "1" :b "2"))

; I cannot get this to work 
; <-- returns all null, cannot get plist values :-(
(loop for x in (get-char) 
      collect (getf (get-list) x))

; this works fine...
(loop for x in '(:a :b) 
      collect (getf (get-list) x))
;返回“:h:i”
(defun get-char()
(通过“ab”循环字符)
收集(连接“字符串”:(字符串字符)))
; 普利斯特
(defun get-list()(list:a“1”:b“2”))
; 我不能让它工作

; 更改
get char
函数以返回字符中的关键字列表:

(defun get-char() 
  (loop 
    for char across "ab" 
    collect (intern (string-upcase char) :keyword)))
计算
(获取字符)
=>
(:A:B)
。此外:

(loop for x in (get-char) collect (getf (get-list) x))
=>


更改
get char
函数以返回字符中的关键字列表:

(defun get-char() 
  (loop 
    for char across "ab" 
    collect (intern (string-upcase char) :keyword)))
计算
(获取字符)
=>
(:A:B)
。此外:

(loop for x in (get-char) collect (getf (get-list) x))
=>


这正是我想要的-对我来说似乎有点神秘,但我刚刚开始学习LISP-这很有意义tho:-)-谢谢!这正是我想要的-对我来说似乎有点神秘,但我刚刚开始学习LISP-这很有意义tho:-)-谢谢!提示:下次可能想用一个比“简单的LISP问题”更具描述性的标题。:-)提示:下次可能想用一个比“简单的LISP问题”更具描述性的标题。:-)