迭代数字的数字

时间:2015-02-01 21:34:10

标签: python string for-loop

我有一个字符串输入,例如100124。我想评估字符串的每个数字为整数,所以我做:

for c in string:
    c = int(c)
    # do stuff with c

在语法上有更好的方法吗?我在循环之前尝试string = int(string),但数字不可迭代。

2 个答案:

答案 0 :(得分:6)

您可以map将字符串int

for c in map(int, string):
    # do stuff with c

演示:

>>> for c in map(int, '100124'):
...     c
...
1
0
0
1
2
4
>>>

答案 1 :(得分:1)

您可以使用返回生成器的列表推导:

>>> [int(i) for i in s]
[1, 0, 0, 1, 2, 4]
>>> for digit in [int(i) for i in s] :
...    # do stuff with digit

map功能:

>>> map(int,s)
[1, 0, 0, 1, 2, 4]