我正在浏览一些Elixir Koans并遇到以下情况:
think "taking some items the other way" do
numbers = 1..10
assert Enum.take(numbers, -2) == __?
end
花了很多时间在这之后我终于在iex中看了它,我得到了:
'\t\n'
经过更多实验:
Enum.take(numbers, -4) == '\a\b\t\n'
Enum.take(numbers, -5) == [6, 7, 8, 9, 10]
为什么有时会打印出ascii以及其他时间我想要的列表?七点会发生什么?
答案 0 :(得分:2)
列表的漂亮打印是通过使用Erlang的本机功能完成的。当列表的所有元素都是有效的ASCII码时,它被设计为将列表打印为字符串。
7岁时你有BEL' \ a' (a用于警告' AFIAK)
在6,您有ACK显然没有可打印的表示