首先,让我们看一下正常列表:iex> z = [:a, 1]
。
然后z的第一项List.first(z)
为:atom
,其值为:a
。
然后,我们创建如下列表:iex> z = [a: 1]
。现在,z的第一项List.first(z)
为Tuple
,其值为{:a, 1}
。
为什么呢?那是否有一些相关的文件?谢谢: - )
答案 0 :(得分:3)
[a: 1, b: 2]
是关键字列表的快捷方式,关键字列表是元组列表,其中第一个elem是原子,第二个元素是任何术语。所以它等于[{:a, 1}, {:b, 2}]
。你可以在这里阅读https://elixir-lang.org/getting-started/keywords-and-maps.html