python - 跟踪列表中的数字
问题描述
我有一个很长的数字列表,我有一个 if 语句,它取出大于某个值的数字并将它们放在不同的列表中。我希望能够跟踪原始列表中的 ID,以便返回并将它们与其他信息相匹配。请参见下面的示例:
test_list = [564, 564748, 654, 89, 567, 98]
large_numbers = []
for i in test_list:
if i >= 600:
large_numbers.append(i)
这工作正常,我得到:
large_numbers = [564748, 654]
但是有没有办法为每个人分配一个 ID,所以我知道它在原始列表中的位置。理想情况下,它会输出类似于:
print(ID_of_large_numbers)
[0,1]
这样我就知道它是原始列表的第一个和第二个元素。(我的个人列表有几个 100 个元素,我将它从高到低排序成一个 numpy 数组,所以我无法找到他们的 ID)。
解决方案
你可以enumerate
在你的for循环中以某种方式使用:
for idx,i in enumerate(test_list):
if i >= 600:
large_numbers.append(i)
ID_of_large_numbers.append(idx)
推荐阅读
- typescript - ChromeDriver 在启动后失败并出现以下错误
- python - 无法通过使用预定义参数作为字符串的一部分来引用列
- image - 将 3 通道图像转换为 T 型单向量的最快方法
- google-cloud-platform - GCP 日志接收器未导出
- c# - C 和 C# 之间浮点精度行为的差异
- c++ - pybind11 用于 C++14/C++17
- excel - 做直到带排除的工作表循环
- reactjs - 反应传单地图禁用蚂蚁设计选择
- sql-server - Powershell SMO 在获取备份目录时出现问题
- android - 带有 firemonkey 10.3.3 的 Android API 级别 29 无法在 Android v.10.0 设备上运行