【发布时间】:2014-03-05 23:17:08
【问题描述】:
仅使用 list_to_atom() 给出:
list_to_atom("hello").
hello
list_to_atom("Hello").
'Hello'
为什么会有差异?
我正在尝试用数字、字符串和原子来格式化字符串,如下所示:
lists:flatten(io_lib:format("PUTVALUE ~p ~p", [list_to_atom("hello"), 40])).
"PUTVALUE hello 40"
lists:flatten(io_lib:format("PUTVALUE ~p ~p", [list_to_atom("Hello"), 40])).
"PUTVALUE 'Hello' 40"
在 Erlang 中最好的方法是什么?
编辑:为了让问题更清楚,有比上面的例子更多的值,在某些情况下,值可以是字符串或原子,比如
lists:flatten(io_lib:format("PUTVALUE ~p ~p ~p", [list_to_atom("hello"), X, 40])).
其中第一个参数始终是字符串,但X 可以是原子或字符串。第三个参数始终是一个数字。
【问题讨论】:
标签: erlang