python 列表中元素转换
有一个数字字符的列表:
numbers = ['1', '5', '10', '8']
想要把每个元素转换为数字:
1 numbers = [1, 5, 10, 8]
用一个循环来解决:
1 new_numbers = []; 2 for n in numbers: 3 new_numbers.append(int(n)) 4 numbers = new_numbers
有没有更简单的语句可以做到呢?
numbers = [ int(x) for x in numbers ]
2. Python2.x,可以使用map函数
1 numbers = map(int, numbers)
3.如果是3.x,map返回的是map对象,当然也可以转换为List:
umbers = list(map(int, numbers))
4. 还有一种比较复杂点
for i, v in enumerate(numbers): numbers[i] = int(v)