zoukankan      html  css  js  c++  java
  • Python max()方法扩展:求字典中值最大的键

    重要的应该写在前面【捂脸】
     
    场景一:仅求最大值对应的键,代码如下:
    >>> dic = {'A':4, 'B':2, 'C':3}
    >>> max_key = max(dic, key = dic.get)
    >>> max_key
    'A'
    >>>
    场景二:求最大值对应的键值对,代码如下:
    >>> dic = {'A':4, 'B':2, 'C':3}
    >>> max_key_value = max(dic.items(), key = lambda x: x[1])
    >>> max_key_value
    ('A', 4)
    >>>
     
    以下为max用法总结,不需要的小伙伴可忽略
     
    描述:
    取传入的多个参数中的最大值,或者传入的可迭代对象元素中的最大值
     
    语法:
    1. max(iterable, *[, key, default])
    2. max(arg1, arg2, *args[, key])
     
    参数介绍:
    默认数值型参数,取值大者;字符型参数,取字母表排序靠后者
    key---可作为一个函数,用来指定取最大值的方法。
    default---用来指定最大值不存在时返回的默认值
    arg1---字符型参数/数值型参数,默认数值型
     
     
    返回值:
    1.传入多个参数取最大值
    >>> print(max('a','b','c','d','e','f','g'))
    g
    >>>
    2.传入可迭代对象时,取其元素最大值
    >>> s = 'abcdefg'
    >>> print(max(s))
    g
    >>>
    3.传入可迭代对象为空时,必须指定参数default,用来返回默认值
    >>> print(max([],default=1))
    1
    >>> print(max([]))
    Traceback (most recent call last):
      File "<pyshell#45>", line 1, in <module>
        print(max([]))
    ValueError: max() arg is an empty sequence
    >>>
    4. 传入命名参数key,其为一个函数,用来指定取最大值的方法(灵活运用,根据字典的键值)
    示例一:
    >>> li = [{'name': 'li', 'age': 24},{'name': 'he', 'age': 45} ]
    >>> li_max = max(li, key = lambda x: x['age'])
    >>> print(li_max)
    {'name': 'he', 'age': 45}
    >>>
    示例二(求字典中值最大的键):
    >>> dic = {'a': 3, 'b': 3, 'c': 2, 'd': 1}
    >>> dic_max = max(dic, key = dic.get)
    >>> print(dic_max)
    a
    >>>
    min()函数的功能与max()函数的功能相反
  • 相关阅读:
    hibernate经典配置与测试
    jquerry之隔行跳色
    Struts2之Ognl用法
    java模拟系统进程算法的小程序
    HDU 1506 Largest Rectangle in a Histogram【矩阵最大面积】
    POJ 3624 Charm Bracelet【01背包】
    HDU 1505 City Game【矩阵的最大面积】
    POJ 1837 Balance【DP】
    HDU 1059 Dividing【多重背包】
    POJ 2063 Investment【完全背包】
  • 原文地址:https://www.cnblogs.com/QianyuQian/p/13667965.html
Copyright © 2011-2022 走看看