• 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 0

    2.11Python下关于列表的高级排序

    Posted by 撒得一地 on 2016年1月23日 in python教程
    国外稳定加速器推荐    Express | Vypr

    如果希望元素能按照特定的方式进行排序(而不是sort函数默认的方式,即根据Python的默认排序规则按升序排列元素),那么可以通过compare(x,y)的形式自定义比较函数。compare(x,y)函数会在 x<y 时返回负数,在x>y 时返回正数,如果x=y则返回0(根据你的定义)。定义好该函数后,就可以提供给sort方法作为参数了。

    内建函数cmp提供了比较函数的默认实现方式:

    >>>cmp(10,8)
    >>1
    >>>cmp(8,10)
    >>>-1
    cmp(8,8)
    >>>0
    >>>numbers = [5,2,9,7]
    >>>numbers.sort(cmp)
    >>>numbers
    [2,5,7,9]
    

    这里要注意的是,上面的方法只适用于Python3.0以下,3.0以上去掉了cmp函数。

    sort方法有另外两个可选的参数—key和reverse。如果要使用它们,那么就要通过名字来指定(这叫做关键字参数)。参数key和cmp类似,必须提供一个在排序过程中使用的函数。然而,该函数并不是直接用来确定对象的大小,而是为每个元素创建一个键,然后所有元素根据键来排序。因此,如果要根据元素的长度进行排序,那么可以

    使用len作为键函数:

    >>> x = ['abcd','afdfdf','a']
    >>> x.sort(key=len)
    >>> x
    ['a', 'abcd', 'afdfdf']
    

    另一个关键字参数reverse是简单的布尔值(True或False),用来指明列表是否要进行反向排序。

    >>> x = [3,2,5,1,9]
    >>> x
    [3, 2, 5, 1, 9]
    >>> x.sort(reverse=True)
    >>> x
    [9, 5, 3, 2, 1]
    

    cmp、key、reverse参数都可以用于sorted函数。在多数情况下,为cmp或key提供自定义函数是非常有用的。

    标签:

    上一篇:

    下一篇:

    相关推荐

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    9 + 1 = ?

    网站地图|广东快乐10分开奖直播

    Copyright © 2015-2019 广东快乐10分开奖直播 All rights reserved.
    闽ICP备15015576号-1,版权所有?psz.

  • 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 重庆时时彩 重庆时时彩官方是假的 牛牛热视频 全天pk10计划群 香港本港台直播报码 生肖时时彩直一 幸运28彩票 广东时时彩20选8下载走图 足彩半全场赔率 北京pk10彩票官网 让分胜负和胜负区别 6场半全场019期开奖 淘宝彩票开奖时间 安徽11选5 重庆时时彩表格手机版 酷喜乐彩铅油性