1.sorted函数。sorted函数默认的排序是按照从小到大的排序进行的。eg:
B = sorted([1,4,8,7,6,5,10,20,22,11])
print B
#[1, 4, 5, 6, 7, 8, 10, 11, 20, 22]
可以在后面在传入一个自定义的排序方法,就可以按照自己的要求进行排序了。所以系统自带的sorted()方法,可以传入一个参数,
也可以传入两个参数:
def reverse(x,y):
if x > y:
return -1
elif x == y:
return 0
else:
return 1
C = [1,4,8,5,6,10,20,25,7,12,100]
D = sorted(C,reverse)
print D
#[100, 25, 20, 12, 10, 8, 7, 6, 5, 4, 1]
默认情况下,最字符串的排序是按照ASCII码的大小来比较的,由于'z'<'a',
所以z会排在a的前面。我们也可以定义一个忽略大小写的算法,然后在进行比较
def cmp_igore_case(s1,s2):
u1 = s1.upper()
u2 = s2.upper()
if u1 < u2:
return -1;
if u1 > u2:
return 1
return 0
E = ['abc','ABC','DBA','def','DDf','deH','hjs','bcj'];
F = sorted(E,cmp_igore_case)
print F
#['abc', 'ABC', 'bcj', 'DBA', 'DDf', 'def', 'deH', 'hjs']