我有一个字符串输入,例如100124
。我想评估字符串的每个数字为整数,所以我做:
for c in string:
c = int(c)
# do stuff with c
在语法上有更好的方法吗?我在循环之前尝试string = int(string)
,但数字不可迭代。
答案 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]