在python字典中查找索引范围之间的最小值
我正在寻找字典中索引范围之间的最小值;例如:在python字典中查找索引范围之间的最小值,python,python-3.x,dictionary,range,minimum,Python,Python 3.x,Dictionary,Range,Minimum,我正在寻找字典中索引范围之间的最小值;例如: A = {1: -3, 2: -5, 3: 4, 5: 12, -34: 23, 64: 32} 我想找到: min(A[2..5]) = min(A[2] A[3] A[4]A [5]) = -5 这可能吗?Pythonlist不支持通过索引器列表进行索引。有几种解决方案可以克服这一问题 你知道钥匙在哪里吗 您可以使用itemgetter和序列解包: from operator import itemgetter A = {1: -3, 2:
A = {1: -3, 2: -5, 3: 4, 5: 12, -34: 23, 64: 32}
我想找到:
min(A[2..5]) = min(A[2] A[3] A[4]A [5]) = -5
这可能吗?Python
list
不支持通过索引器列表进行索引。有几种解决方案可以克服这一问题
你知道钥匙在哪里吗
您可以使用itemgetter
和序列解包:
from operator import itemgetter
A = {1: -3, 2: -5, 3: 4, 5: 12, -34: 23, 64: 32}
res = min(itemgetter(*[2, 3, 5])(A))
# -5
其中可能不存在密钥
可以使用范围
对象指定关键点的范围。列表
或集合
也可以。这里,我们将生成器表达式馈送到min
:
res = min(v for k, v in A.items() if k in range(2, 6))
# -5
你甚至都没用谷歌搜索过。这里是一个链接。使用它well@SaNa,我编辑了您的问题以修复语法错误;希望没问题。