python - 当我更改格式时,Python 更改列表的顺序
问题描述
我正在尝试将列表中所有项目的格式从浮点数更改为整数。我的代码似乎可以完成这项工作,但是它正在更改列表中项目的顺序。
一个可重现的例子:
l = [-1.0, 0.0, 1.0]
[int(f'{float(l[int(i)]):g}') for i in l]
>>> Out: [1, -1, 0]
知道如何避免这些元素的重新排列吗?
谢谢你。
解决方案
l[int(i)])
<- 您在此处按索引访问列表位置。只需使用 map 重新编写代码:
l = [-1.0, 0.0, 1.0]
o = list(map(int, l))
print(o)
输出:
[-1, 0, 1]
推荐阅读
- python - Docker python-alpine 3.9 缺少 ibtbb
- mysql - 为 asp.net core mvc 应用程序的 macos 更新 vb 2019 社区中的包时出错
- c++ - 函数返回时中断循环
- java - 杰克逊循环依赖只是通过深度而不是通过深度和广度
- matlab - 在 Matlab 中为每个点分配它最近的中心
- nvidia - D3D11 - 如何处理 SLI 和 Nvidia Surround?
- python - Amazon Linux 中的 Airflow initdb 失败
- python - 如果在创建 df pandas python usecols 时不存在,则跳过列
- node.js - 使用 PM2 运行自定义脚本
- android - 已解决:GL 上下文在 MotionEvent 之后不会创建任何新的 GL 对象