【发布时间】:2011-06-06 18:45:05
【问题描述】:
如何在 Emacs lisp 中将符号类型转换为字符串?
我找不到 symbol-to-string 函数或类似的东西。
【问题讨论】:
如何在 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 来避免引入新符号。
【讨论】:
尝试使用symbol-name:
(symbol-name 'some-symbol)
【讨论】:
(intern "some-string")。