listData=[1,6,7,2,3,9]
sortedData=sorted(listData)
print(sortedData)
对于列表中是简单数字此为一般的升序排列,若要改为降序
listData=[1,6,7,2,3,9]
sortedData=sorted(listData,reverse=True)
print(sortedData)
reverse=True 是按降序排列;reverse=False是按升序排列
若列表中不是简单的数字是元组
listData=[('math',90),('chinese',100),('english',76)]
def mykey(obj): #该obj就是元组
return obj[1] #obj[0]是前面的科目,obj[1]就是科目后所跟的成绩
sortedData=sorted(listData,key=mykey,reverse=False)
#引入参数key,key接收两种形式的值一种是函数,一种是类
#本例定义了一个函数mykey,mykey返回obj[1],即成绩,之后利用reverse=False按照升序排序,若想要按照降序排序:reverse=True
若不想使用mykey函数,可直接利用operator,如下,同时令key=operator.itemgetter(1)对元组中的第一位即成绩进行,升序False,降序True
impore operator
listData=[('math',90),('chinese',100),('english',76)]
sortedData=sorted(listData,key=operator.itemgetter(1),reverse=True)
print(sortedData)
随机生成一个列表,前10个数升序排列后十个数降序排列
import random
random_list=random.sample(range(0,50),k=20)
x=sorted(random_list[0:9])
print(x)
y=sorted(random_list[10:20],reverse=True)
print(y)