美文网首页简友广场
python找茬系列05--sorted方法和列表的sort方法

python找茬系列05--sorted方法和列表的sort方法

作者: young十三 | 来源:发表于2019-07-24 06:27 被阅读0次

    一、基本语法

    1、sort()

    ①sort()是list内置方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的。
    ②默认排序规则

    \color{red}{排序,数字、字符串按照ASCII,中文按照unicode从小到大排序}

    x = [1,5,3]
    x.sort()
    print (x) # [1,3,5]
    

    ③不改变x列表的前提下使用sort()

    x = [1, 5, 3]
    """
    注意:y = x[:] 通过分片操作将列表x的元素全部拷贝给y,
    如果简单的把x赋值给y:y = x,y和x还是指向同一个列表,
    并没有产生新的副本。
    """
    y = x[:]
    y.sort()
    print(x)  # [1,5,3]
    print(y)  # [1,3,5]
    

    2、sorted()

    ①sorted返回一个有序的副本,并且类型总是列表

    x = [1, 5, 3]
    y = sorted(x)
    print(x)  # [1, 5, 3]
    print(y)  # [1, 3, 5]
    
    world = 'hello'
    print(world)  # hello
    print(sorted(world)) # ['e', 'h', 'l', 'l', 'o']
    

    二、高级应用--可选参数配置

    1、sort

    ①有2个可选参数:key和reverse
    I、key在使用时必须提供一个排序过程总调用的函数(可以自定义排序规则)

    x = ['mmm', 'mm', 'mm', 'm' ]
    x.sort(key = len)
    print x # ['m', 'mm', 'mm', 'mmm']
    

    II、reverse: True为倒序排列,False为正序排列

    x = [1, 5, 3]
    y = [1, 5, 3]
    x.sort(reverse=True)
    y.sort(reverse=False)
    print(x)  # [5, 3, 1]
    print(y)  # [1, 3, 5]
    
    2、sorted,1个必填参数iterable,2个可选参数key,reverse
    print(sorted("This is an Apple from Alice".split(), key=str.lower))
    # ['Alice', 'an', 'Apple', 'from', 'is', 'This']
    

    相关文章

      网友评论

        本文标题:python找茬系列05--sorted方法和列表的sort方法

        本文链接:https://www.haomeiwen.com/subject/euyalctx.html