如何将 elisp 列表放入 elisp 哈希
How to put a elisp list inside an elisp hash
我有这段可用的代码
(setq block_id nil)
(setq myHash (make-hash-table :test 'equal))
(puthash "5" "a" myHash)
(message (gethash "5" myHash))
它将一个字符串插入到哈希中。并按预期打印出 "a"
去做。
但是我如何插入一个列表到
哈希?我试过了
(setq block_id nil)
(setq myHash (make-hash-table :test 'equal))
(puthash "5" ("list foo" "baa" "baz") myHash)
(message (gethash "5" myHash))
但是我的 emacs elisp repl 得到了一个 nil。
您有几个错误。您没有引用列表,所以它试图将字符串 "list foo"
作为函数调用。然后你用错误类型的参数调用 message
。
(setq myHash (make-hash-table :test 'equal))
(puthash "5" '("list foo" "baa" "baz") myHash)
(message "%S" (gethash "5" myHash))
我有这段可用的代码
(setq block_id nil)
(setq myHash (make-hash-table :test 'equal))
(puthash "5" "a" myHash)
(message (gethash "5" myHash))
它将一个字符串插入到哈希中。并按预期打印出 "a" 去做。 但是我如何插入一个列表到 哈希?我试过了
(setq block_id nil)
(setq myHash (make-hash-table :test 'equal))
(puthash "5" ("list foo" "baa" "baz") myHash)
(message (gethash "5" myHash))
但是我的 emacs elisp repl 得到了一个 nil。
您有几个错误。您没有引用列表,所以它试图将字符串 "list foo"
作为函数调用。然后你用错误类型的参数调用 message
。
(setq myHash (make-hash-table :test 'equal))
(puthash "5" '("list foo" "baa" "baz") myHash)
(message "%S" (gethash "5" myHash))