将每个列表的每个条目从字符串转换为整数

时间:2016-12-20 19:22:39

标签: python list integer

我有很多包含整数作为字符串的列表。例如scored_h0=['2','3','4']。我试图将每个列表的每个条目从一个字符串转换为一个整数,代码如下,但由于某种原因,它不起作用。没有错误,只是在运行下面的代码后print (scored_h0)(例如)时,条目尚未转换。

power_list = [scored_h0, scored_h1, conceded_h0, conceded_h1, scored_a0, scored_a1, conceded_a0, conceded_a1]

for list1 in power_list:
   list1 = list(map(int, list1))

3 个答案:

答案 0 :(得分:2)

您正在为变量list1分配新值,但不会改变实际数组。如果你想改变所有这些数组,你必须改变每个数组中的每个值,如下所示:

for list1 in power_list:
   for i in range(len(list1)):
       list1[i] = int(list1[i])

答案 1 :(得分:1)

你在找这样的东西吗?

scored_h0 = ['1', '2', '3']
scored_h1 = ['4', '5', '6']
power_list = [scored_h0, scored_h1]

for i in range(len(power_list)):
    for j in range(len(power_list[i])):
        power_list[i][j] = int(power_list[i][j])

print(scored_h0)
print(scored_h1)

打印:

[1, 2, 3]
[4, 5, 6]

答案 2 :(得分:1)

以下方法完成工作

def to_int(s):
    for l in s:
        for id, val in enumerate(l):
            l[id] = int(val)

因此,您将其称为to_int(power_list)