python - 如何从python3中的单行输入读取整数数组

标签 python arrays list input python-3.2

我想从 python3 中的单行输入中读取一个整数数组。 例如:将这个数组读入一个变量/列表

1 3 5 7 9

我尝试过的

  1. arr = input.split(' ') 但这不会将它们转换为整数。它创建字符串数组

  2. arr = input.split(' ')

    for i,val in enumerate(arr): arr[i] = int(val)

第二个为我工作。但我正在寻找一个优雅的(单行)解决方案。

最佳答案

使用 map :

arr = list(map(int, input().split()))

只需添加,在 Python 2.x 中您不需要调用 list(),因为 map() 已经返回了一个 list,但在 Python 3.x 中 "many processes that iterate over iterables return iterators themselves" .

此输入必须添加 () 即括号对才能遇到错误。这适用于 3.x 和 2.x Python

关于python - 如何从python3中的单行输入读取整数数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18332801/

相关文章:

python - 有没有办法在Python中跨线程添加变量

python - 用字典中的频率/值替换 NumPy 数组条目

arrays - 如何合并谷歌电子表格中的范围

python - 将多个列表写入多个输出文件

c# - 来自 Enumerable.FromRange().Select() 与 ToList() 的 IEnumerable<T>

python - 使用字典在Python中将列表拆分为两部分

python - 从 pandas 系列列表中获取唯一值

python - get_dumies 出现无法散列的类型 'list' 错误

python - 将元素插入 numpy 数组并获取所有滚动排列

javascript - 通过与另一个数组的值比较来对数组进行排序