如何将字符串列表转换为整数列表?

中心网

我正在尝试请求一个数字列表(例如:“ 1 2 3 4 5 6”)并输出一个整数列表(例如:“ [1、2、3、4、5、7]”)。我想出了以下代码:

IO.gets ("Enter a list: ")
|> String.trim
|> String.split
|> Enum.map(&String.to_integer/1)

这将无法编译,并给我以下错误:

== Compilation error in file test.ex ==
** (ArgumentError) argument error
    :erlang.binary_to_integer("Enter")
    (elixir) lib/enum.ex:1270: Enum."-map/2-lists^map/1-0-"/2
    test.ex:4: (file)
    (elixir) lib/kernel/parallel_compiler.ex:121: anonymous fn/4 in 
Kernel.ParallelCompiler.spawn_compilers/1

我每次都通过iex一次运行此代码,使用每个函数的结果作为对下一个函数的输入,并在将它们全部放到一个文件中并运行它时实现了正确格式的列表,但它甚至不会编译...

任何帮助都会很棒。

阿列克谢·马蒂什金(Alexei Matiushkin)

问题是IO.gets括号之间有一个空格这将工作:

IO.gets("Enter a list: ")
|> String.trim
|> String.split
|> Enum.map(&String.to_integer/1)

运算符优先级很重要:

#  3           1
IO.inspect (IO.inspect(42, label: "foo"))
#     2 
|> IO.inspect(label: "bar")

foo: 42
bar: 42
42

让我们看看这里发生了什么:我放置了表示执行顺序的数字。首先执行的是“ foo”,然后是“ bar”,然后才是第一个放置的检查。之所以会这样,是因为Elixir允许(尽管不鼓励)函数调用而没有括号,并且pipe|>优先于函数调用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Lambda表达式将数组/字符串列表转换为数组/整数列表

将列表的字符串列表转换为整数列表

如何将包含字符串列表(内部列表)的对象列表转换为字符串列表

如何将字符串列表转换为LinkedHashMap?

如何将字符串列表转换为整数列表?

在PyParsing中,如何定义setParseAction函数将字符串列表转换为整数列表?

如何将表示元组的字符串列表转换为整数元组?

如何在Python 3x中将字符串列表转换为整数列表

Python将字符串列表转换为整数列表

将包含整数列表的字符串列表转换为数组

Ansible-如何将字符串列表转换为整数列表?

如何将列表作为字符串从API转换为字符串列表

将字符串列表转换为整数列表

将字符串列表转换为从1开始的整数列表

如何在Java中将列表字符串列表转换为列表整数列表

将字符串列表转换为Common Lisp中的整数列表

将字符串列表从文件转换为整数列表

如何将字符串列表转换为列表列表

如何将逗号分隔的字符串转换为整数列表?

如何将字符串列表与整数列表列表相结合

如何将整数列表转换为单个整数?

如何将字符串列表转换为整数索引?

如何将此字符串列表转换为整数

如何将整数列表转换为字符串 - Python

如何将字符串列表转换为 c# 中的浮点数列表,unity?

将字符串列表转换为 2 元组整数列表(& 逗号分隔在元组中)

如何将字符串列表映射到现有的整数列表?

Pandas 将每个单元格都是字符串列表的列转换为整数列表

将字符串列表转换为整数列表