列表的打印输出:keysearch erlang

列表的打印输出:keysearch erlang,erlang,Erlang,我无法打印以下列表的返回输出:keysearch函数 case lists:keysearch(Query,1,Data) of {value,Answer} -> io:format("~p",Answer); false -> io:format("not found ~n") end, 我知道答案是我应该打印出来的元组。有人能告诉我我犯了什么错误吗? 提前感谢io:format需要一个参数列表,即使只有一个: io:format("~p", [

我无法打印以下
列表的返回输出:keysearch
函数

case lists:keysearch(Query,1,Data) of
    {value,Answer} ->
    io:format("~p",Answer);
    false ->
    io:format("not found ~n")
end,
我知道答案是我应该打印出来的元组。有人能告诉我我犯了什么错误吗?
提前感谢

io:format需要一个参数列表,即使只有一个:

io:format("~p", [Answer]);

您可能希望打印找到的密钥,从而

{value, {Query, Answer}} -> io:format("~p", [Answer]);

+有趣的是,他并没有得到一个错误匹配(因为答案是一个元组,而不是一个列表)。这意味着keysearch总是返回false。@Narayanan为什么不尝试运行lists:keysearch以在解释器(erl)中查找某些值?你可能会发现一些有趣的事情。