python如何将list中的字符转为数字

list=['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
想转化为list=[0, 1 ,2, 3, 4, 5, 6, 7, 8, 9]
请问要如何操作 谢谢

python里面好像只能直接转一维的list,以python 3.6为例:

问题 1:

list=['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

转化为:list=[0, 1 ,2, 3, 4, 5, 6, 7, 8, 9]

代码如下:

list_to_float = list(map(lambda x:float(x), list))

问题2:(对于二维数组,需要加个循环,变成一维数组)

list=[['0', '1', '2'], ['3', '4', '5'], ['6', '7', '8']]

转化为:list=[[0, 1 ,2], [3, 4, 5], [6, 7, 8]]

代码如下:

list_to_float = []
for each in list:
    each_line=list(map(lambda x: float(x), each))
    list_to_float.append(each_line)

总之:关键还是map函数映射,如果是python 2.x的话,你可以试试 

list_to_float = map(lambda x:float(x), list)

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-08-21
lists=['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
lists= map(int, lists)
temp = []
for i in lists:
    temp.append(i)
print temp

追问

请问能不能用float(list [i])??

追答

实践出真知,你试一下能行就行啊

第2个回答  推荐于2017-11-28
for index, item in enumerate(list_a):
    list_a[index] = int(item)

追问

……你这也太取巧了吧 数据不是一定就是0到9 我只是举个例子啊……

追答

如果你要转浮点数形式的字符串的话,用这个版本的:

for index, item in enumerate(list_a):
    list_a[index] = eval(item)

或者用楼下的map()函数,更简洁:

list_a = map(eval, list_a)

本回答被提问者采纳
第3个回答  2018-03-30
for index, item in enumerate(list_a):
    list_a[index] = int(item)

或者

list_a = map(eval, list_a)

或者

for index, item in enumerate(list_a):
    list_a[index] = eval(item)

本回答被网友采纳
相似回答