首页 > 解决方案 > 当我更改格式时,Python 更改列表的顺序

问题描述

我正在尝试将列表中所有项目的格式从浮点数更改为整数。我的代码似乎可以完成这项工作,但是它正在更改列表中项目的顺序。

一个可重现的例子:

l = [-1.0, 0.0, 1.0]
[int(f'{float(l[int(i)]):g}') for i in l]

>>> Out: [1, -1, 0]

知道如何避免这些元素的重新排列吗?

谢谢你。

标签: pythonlistformatintegerdecimal

解决方案


l[int(i)])<- 您在此处按索引访问列表位置。只需使用 map 重新编写代码:

l = [-1.0, 0.0, 1.0]
o = list(map(int, l))
print(o)

输出:

[-1, 0, 1]

推荐阅读