我只是想知道如何更改列表中的值类型。所以,让我们说我想要list_a = ['20.3', '35', '10', '6.74', '323']
整数,以便进行计算。
list_a = ['20.3', '35', '10', '6.74', '323']
for i in list_a:
print int(i) * 10
先谢谢。
答案 0 :(得分:1)
使用地图。 使用Python2:
>>> list_a = ['20.3', '35', '10', '6.74', '323']
>>> list_a = map(float, list_a)
>>> list_a[0]*2
40.6
在Python3中,map返回迭代器而不是列表。所以,使用Python3:
>>> list_a = list( map(float, list_a) )
答案 1 :(得分:0)
您实际上需要将字符串转换为浮点数,因为它们具有小数点,而不是整数。
简单方法:创建一个空列表,并循环显示原始列表。在进行修改时,将新列表中的项目附加到空列表中。你有修改,这很好:
list_a = ['20.3', '35', '10', '6.74', '323']
list_b = []
for i in list_a:
list_b.append(float(i)*10)
如果您想要更复杂的解决方案,可以使用列表解析:
list_b = [float(i)*10 for i in list_a]
这些是等效的解决方案。
最后,您可以使用enumerate()
实际修改list_a的元素:
for i, j in enumerate(list_a):
list_a[i] = float(j)*10
答案 2 :(得分:0)
list_a = ['20.3', '35', '10', '6.74', '323']
for i in range(len(list_a)):
list_a[i] = int(list_a[i])
答案 3 :(得分:0)
a = [round(float(i) * 10) for i in a]
返回Python 2中的int列表。