Python关于列表中字符串类型数字排序问题
在list中字符串类型的数字使用sort排序会错误
如
a=['2121212.121','45454.4545','123213213213','2321321312','323213','3232324','32132144214.56','2421551']
a.sort(reverse=True)
print(a)
输出结果为发现排序错误,此时需要把列表里的数字变为数字类型,而不是字符串
a=['2121212.121','45454.4545','123213213213','2321321312','323213','3232324','32132144214.56','2421551']
#使用一个for循环遍历a,然后把每个元素进行转换为float类型,然后在重新覆盖a的元素
for i in range(len(a)):
b=float(a[i])
a[i]=round(b,2)
a.sort(reverse=False)
print(a)
结果排序正确