python的内置函数sort

1.定义一个列表,使用内置函数sort进行排序:

li = [4, 5, 6, 7, 2, 1, 3, 8, 9, 10]
li.sort()
print(li)

2.将列表赋值给新列表,将新列表进行排序,原列表内容不变:
内置函数sort的使用

li=[4,3,6,1,5,10,9]
li1=li[:]#[:]提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串
li1.sort()
print(li1)
print(li)

内置函数sorted的使用

li=[4,3,6,1,5,10,9]
li2=sorted(li)
print(li2)
print(li)

3.不改变原始状态,取绝对值排序:

li=[-1,-78,-3,999,-5,8,-4]
li1=sorted(li,key=abs)
print(li1)

4.不改变原始状态,按照ASCII值进行排序:

s=['zdgdfh','Qsfsf','pijjhj','adfdf','Bdf']
print(s)
print(sorted(s))
print(sorted(s,key=str.lower))
print(sorted(s,key=str.upper))

5.按照学生成绩进行排序:

students = [('jone', 'A', 12),
            ('lisa', 'C', 10),
            ('dave', 'B', 19)]
print(sorted(students, key=lambda student: students[2]))

6.给商场中的水果进行排序:

info = [
    # 商品名称 商品数量 商品价格
    ('apple1', 200, 100),
    ('apple2', 40, 32),
    ('apple3', 30, 10),
    ('apple4', 20, 15),
]

# 按照商品数量进行排序
def sorted_by_count(x):
    return x[1]

# 按照商品价格进行排序
def sorted_by_price(x):
    return x[2]

# 先按照商品数量进行排序 如果商品数量一致
# 则按照商品价格进行排序
def sorted_by_count_price(x):
    return x[1], x[2]

print(sorted(info, key=sorted_by_count))
print(sorted(info,key=sorted_by_price))
print(sorted(info, key=sorted_by_count_price))

发布了103 篇原创文章 · 获赞 1 · 访问量 973

猜你喜欢

转载自blog.csdn.net/qq_45652989/article/details/103951116