# sorted对所有的可迭代序列都有效print('========list======') # sort:对列表进行排序(列表中全是数值) li = [11, 224, 12, 432, 4, 35, 3, 6, 32, 34, 552, 233]# 默认从小到大进行排序(升序) # 不会变化原列表 print(sorted(li)) print(sorted(li,reverse=True))#倒序 print(li)#会变化原列表 li.sort() print(li)print('=======set=======')s8={11,23,4,5,6,1} print(s8)#正常情况下没有顺序,随机排序 print(sorted(s8))#list和set类型都可以用sortedprint('=======dict=======')dict1={11: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'} #print(sorted(dict1)) print(dict1)print('======通过key指定的函数来忽略字符串的大小写========') print(sorted("This is a test string from Andrew".split(), key=str.lower))print('======通过key指定1========')student_tuplesA = [('john', 'A', 15),('jane', 'B', 12),('dave', 'B', 10), ] print(sorted(student_tuplesA,key=lambda x:x[2]))print('=======通过key指定2=======') class Student:def __init__(self, name, grade, age):self.name = nameself.grade = gradeself.age = agedef __repr__(self):return repr((self.name, self.grade, self.age))student_objects = [Student('john', 'A', 15),Student('jane', 'B', 12),Student('dave', 'B', 10), ]print(sorted(student_objects, key=lambda x: x.age) )print('=======复杂排序======') # 先以grade降序排列,然后再以age升序排列。 s = sorted(student_objects, key=lambda x:x.grade) print(sorted(s, key=lambda x:x.age) )