Python 之sort排序

一、原址排序

list.sort()

>>> x = [4, 6, 2, 1, 7, 9]
>>> x.sort()
>>> print (x )
 [1, 2, 4, 6, 7, 9]

二、副本排序

[:]分片方法:

y = x[:] 通过分片操作将列表x的元素全部拷贝给y,如果简单的把x赋值给y:y = x,y和x还是指向同一个列表,并没有产生新的副本

    >>> x =[4, 6, 2, 1, 7, 9]
    >>> y = x[ : ]
    >>> y.sort()
    >>> print y
    [1, 2, 4, 6, 7, 9]
    >>> print x
    [4, 6, 2, 1, 7, 9]
sorted方法:

sorted() 函数也不会改变所传入的可迭代对象,该函数只是返回一个新的、排序好的列表。

>>> x =[4, 6, 2, 1, 7, 9]
>>> y = sorted(x)
>>> print (y)
[1, 2, 4, 6, 7, 9]
>>> print (x )
[4, 6, 2, 1, 7, 9] 

在使用 sorted() 函数时,还可传入一个 reverse 参数,如果将该参数设置为 True,则表示反向排序

>>> sorted(a, reverse = True)
[90, 30, 20, 3.6, 3.5, -1.2]

在调用 sorted() 函数时,还可传入一个 key 参数,该参数可指定一个函数来生成排序的关键值

>>> b = ['fkit', 'crazyit', 'charlie', 'fox', 'Emily']
>>> sorted(b, key = len)
['fox', 'fkit', 'Emily', 'crazyit', 'charlie']

猜你喜欢

转载自blog.csdn.net/qq_40443457/article/details/87938557