python中涉及到的对象排序
⼀、列表(list)排序:
  1 sort()函数
    list对象有sort()内置排序⽅法。
    list.sort(key=None, reverse=False)
    key:⽤来指定list中元素以什么形式去参与排序,该参数可以接受⼀个函数,以函数的返回值进⾏排序。
    reverse:默认false(升序),true为降序。
    sort()⽅法改变的是对象⾃⾝,所以元组在排序时要先转换为列表。
  2内置函数sorted():
    result = sorted(iterable,key=None,reverse=False)
    iterable:为可迭代对象,
    key:⽤来指定可迭代对象中各元素以什么形式参与排序,key可以为⼀个函数,将会以函数的返回值对元素进⾏排序,
    reverse:默认false(升序),true为降序,
    result:sorted()函数不改变对象本⾝,它返回的是iterable按照key的排序⽅式排好之后的对象。
⼆、字典(dict)排序:
  1内置函数sorted():
    ⼀下排序中sorted()函数默认reverse=False(降序),若要升序则reverse=True
    字典没有实例排序⽅法sort()。
    字典排序分为按key排序、按value排序。
    按key排序: key_list = sorted(dict) 默认为按key排序,返回的是排好序的key的列表,
          key_value_tuple_list = sorted(dict.items()) 返回的是元素为元组 (key,value) 形式的列表。
    按value排序:  ①value_list = sorted(dict.values()) 返回的是排好序的value的列表,
          ②def func(item):
              print(itme) #item其实是个这 (key,value)
sortedlist
              return item[1] #如果这⾥返回item[0],将会按key进⾏排序
                key_value_tuple_list = sorted(dict.items(),key=func) 根据func的返回值进⾏排序,返回的是元素为元组(key,value)形式的列表,各元素以value进⾏排序。 
          ③from operator import itemgetter
            key_value_tuple_list  = sorted(dict.items(),key=itemgetter(0)) #itemgetter(0)是key,所以这是以key值进⾏排序,返回的是元素为元组(key,value)形式的列表
            key_value_tuple_list  = sorted(dict.items(),key=itemgetter(0)) #itemgetter(1)是value,所以这是以value值进⾏排序,返回的是元素为元组(key,value)形式的列表

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。