You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中定位并打印列表中变为-1的元素索引?

解决方案

使用enumerate遍历

这是最直观的解决方式,enumerate可以同时获取列表的索引和对应元素值,刚好匹配你的需求。修改后的代码如下:

while True:
    if any(variables):
        for idx, val in enumerate(variables):
            if val == -1:
                print(f"索引: {idx}, 元素值: {val}")
                # 若确定只有一个元素会变为-1,找到后可直接break终止循环
                break

使用列表推导式筛选

如果想要更简洁的写法,列表推导式可以快速筛选出所有值为-1的元素及其索引:

while True:
    if any(variables):
        # 筛选出所有符合条件的(索引, 元素)对
        target_items = [(idx, val) for idx, val in enumerate(variables) if val == -1]
        # 假设仅存在一个目标元素,取第一个结果即可
        if target_items:
            idx, val = target_items[0]
            print(f"索引: {idx}, 元素值: {val}")

补充说明:如果场景中可能出现多个元素变为-1,列表推导式会返回所有符合条件的项,你可以根据需求遍历输出或做其他处理。

内容的提问来源于stack exchange,提问作者Alex Borg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 20:35:22