【发布时间】:2019-03-19 09:14:30
【问题描述】:
我正在尝试获取 17 位长的列表数字,然后将其与 Integer.digits 拆分,并获得这些数字的总和。不幸的是,我遇到了意外行为(我的结果包含一串字母),不确定这是错误还是个人错误。
下面是iex控制台报错,结果给'Q $':
iex(4)> numbers = [
...(4)> [1, 4, 8, 1, 3, 6, 9, 4, 2, 5, 5, 6, 3, 1, 8, 8, 7],
...(4)> [1,5, 9, 4, 1, 3, 2, 7],
...(4)> [1, 5, 4, 6, 5, 7, 8]
...(4)> ]
iex(5)> Enum.map(numbers, fn x -> Enum.sum(x) end)
'Q $'
但是当我从最后一个列表中删除一个数字时,它会再次正常工作,并给出预期的结果
iex(1)> numbers = [
...(1)> [1, 4, 8, 1, 3, 6, 9, 4, 2, 5, 5, 6, 3, 1, 8, 8, 7],
...(1)> [1,5, 9, 4, 1, 3, 2, 7],
...(1)> [1, 5, 4, 6, 5, 7]
...(1)> ]
iex(2)> Enum.map(numbers, fn x -> Enum.sum(x) end)
[81, 32, 28]
这是预期的行为吗?或者有什么办法可以解决这个问题,因为我的每个列表都需要将 17 个单独的数字相加。
【问题讨论】:
标签: elixir