我希望我的代码循环遍历列表中的每个项目并将其从str转换为int,但它只转换列表的一半并按不规则的顺序.我的代码:
for item in list: list.append(int(item)) list.remove(item) print (list)
例如,如果列表是['5','6','3','5','6','2','6','8','5','4','2', '8']
决赛将是['6','8','5','4','2','8',3,6,2,6,5,5]
这只是一半转换而不是按顺序.
我可以用另一种方式做到这一点,但这要长得多,所以想解决这个问题并添加我对for循环的了解.
我对Python的知识和经验很小,所以我很可能不会理解,除非它是非常基本的并且解释了术语.
使用列表理解:
l = ['5', '6', '3', '5', '6', '2', '6', '8', '5', '4', '2', '8'] output = [int(i) for i in l] print(output) [5, 6, 3, 5, 6, 2, 6, 8, 5, 4, 2, 8]
如果你不理解列表理解,你可以使用简单的for
循环:
l1 = [] for i in l: l1.append(int(i)) print(l1) [5, 6, 3, 5, 6, 2, 6, 8, 5, 4, 2, 8]