python - 从字符串转换到列表中的倒数第二个条目后舍入 float

标签 python list

假设我们有一个列表:

list_t = ['1.234', '3.6654', '7.134123', '2.2323', 'Someone']

我们的操作应该将上面的字符串列表更改为浮点值,并将浮点值四舍五入到除最后一个字符串外的 2 点。

预期输出将是:

list_t = [1.23, 3.67, 7.13, 2.23, 'Someone']

最佳答案

如果字符串总是出现在最后一个索引中,您可以使用这个简单的列表理解:

list_t = ['1.234', '3.6654', '7.134123', '2.2323', 'Someone']

list_t = [round(float(num),2) for num in list_t[:-1]] + [list_t[-1]]

print(list_t)

输出:

[1.23, 3.67, 7.13, 2.23, 'Someone']

如果字符串可以在任何位置,则不必使用 try-except block 或其他东西。您可以使用此列表理解:

list_t = ['1.234', '3.6654', '7.134123', '2.2323', 'Someone']

list_t = [round(float(num),2) if num.replace('.', '', 1).isdigit() else num for num in list_t]

print(list_t)

输出:

[1.23, 3.67, 7.13, 2.23, 'Someone']

关于python - 从字符串转换到列表中的倒数第二个条目后舍入 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64710650/

相关文章:

python - 如何修改特定测试的失败报告

c# - 如何从 SQL 填充列表 <> 并在 GridView 中显示列表值

list - Prolog 列出连续对

python - 如何将非分组列保留在 Pandas 的 groupBy 中

python - 请求是否使重试方法在几秒钟后执行?

python - 如何在谷歌应用引擎中执行多个异步查询?

python - 如何从图像 url (jpeg) 读取字节并在 Python 2.7 上以 base64 编码?

python - 带范围的for循环只取最后一个元素

c# - 如何使用 MySql C# 从 "public List<string>[]"获取每个列表的结果

asp.net - 传递数组到客户端显示