在Python 3中输入int列表

时间:2013-05-13 15:07:05

标签: python string list python-3.x

我尝试从Python 2.7更改为3.3.1

我想输入

1 2 3 4

并输出

[1,2,3,4]

在2.7我可以使用

score = map(int,raw_input().split())

我应该在Python 3.x中使用什么?

2 个答案:

答案 0 :(得分:24)

在Python 3中使用input()。{3}中已将raw_input重命名为input。而map现在返回迭代器而不是列表。

score = [int(x) for x in input().split()]

或:

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

答案 1 :(得分:1)

作为一般规则,您可以使用Python附带的2to3 tool至少指向正确的移植方向:

$ echo "score = map(int, raw_input().split())" | 2to3 - 2>/dev/null
--- <stdin> (original)
+++ <stdin> (refactored)
@@ -1,1 +1,1 @@
-score = map(int, raw_input().split())
+score = list(map(int, input().split()))

输出不一定是惯用的(列表理解在这里会更有意义),但它会提供一个不错的起点。