您好 如何创建具有特定名称的列表,例如,使用名称myList =(1 2 3 4 5)创建此列表。 感谢
答案 0 :(得分:6)
全局:
(defvar my-list (list 1 2 3 4 5))
本地:
(let ((my-list (list 1 2 3 4 5)))
<code using my-list goes here>)
注意: ANSI Common Lisp中没有词法全局变量(尽管可以使用define-symbol-macro
伪造它们)。使用defvar
或defparameter
声明一个全局变量会生成变量special
,从而从变量中删除闭包等词法属性。因此,您可能希望通过在变量名称中使用耳罩来区分特殊变量和词法变量:
(defvar *my-list* (list 1 2 3 4 5))