如何在Emacs Lisp中将符号类型转换为字符串?
我无法找到symbol-to-string
函数或类似的函数。
通过符号名称(字符串),您可以获取符号的值。使用Trey Jackson的解决方案:
(setq ASymbol 10) => 10
(intern "ASymbol") => 'ASymbol (e.g. the unevaluated symbol with name "ASymbol")
(symbol-value (intern "ASymbol")) => 10
如果您只有符号名称,想要获取它们的值,那么这将非常有用。例如,您可以从字符串中读取它们。
需要注意的是: intern
将返回具有给定名称的符号的值。如果不存在具有该名称的符号,则会创建一个新的符号。您可以使用intern-soft
来避免在没有给定名称的符号时引入新符号。
(intern "some-string")
的翻译是:(intern "某个字符串")
。 - Ryan C. Thompson