如何确定一个列表中的几个最小值?

How to determine several minimum in a list?(如何确定一个列表中的几个最小值?)
本文介绍了如何确定一个列表中的几个最小值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个列表,其中至少有几项:

some_list = [1,4,6,4,1,7]

是否有内置函数或智能解决方案来获取最小值的索引?

result = [0,4]

到目前为止我是这样做的,但我更喜欢较短/更易于阅读的解决方案。

 min = 10**10
 result = [] 
 for i in range(len(some_list)):
        if some_list[i] < min:
            min = some_list[i]
            result = [i]
        elif some_list[i] == min:
            result.append(i)

推荐答案

您可以使用enumerate

some_list = [1,4,6,4,1,7]
minimum=min(some_list)
index=[idx for idx,val in enumerate(some_list) if val==minimum]
# [0,4]

这篇关于如何确定一个列表中的几个最小值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)