首页 Python基础入门视频教程 列表-列表排序
pay pay

列表-列表排序

日期: 2021年11月20日 18:57
阅读: 260
作者: Python自学网

摘要: 列表-列表排序

1.排序方法一

list1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'php', 'C#']
str1 = 'akjhfoijhfd'
res = sorted(list1)  # 升序排列
print(res)

res = sorted(list1, reverse=True)  # 降序排列
print(res)

res = sorted(str1)  # 升序排列
print(res)

res = sorted(str1, reverse=True)  # 降序排列
print(res)


list2 = [('d', 21), ('e', 33), ('a', 59), ('s', 12), ('de', 17), ('dd', 15)]
res = sorted(list2)  # 按照第一个元素首字母顺序排序
print(res)
res = sorted(list2, reverse=True)  # 按照第一个元素首字母倒序排序
print(res)

def getKey(k):
    return k[1]

res = sorted(list2, key=getKey)  # 通过高阶函数获取第二个元素,按照第二个元素大小顺序排序
print(res)
res = sorted(list2, key=getKey, reverse=True)  # 按照第二个元素大小倒序排序
print(res)

2.排序方法二

'''
res = list2.sort()
print(res)  # 返回结果为空,是因为sort()方法是直接将list2进行排序的,
# 和上面的sorted不一样,sorted不改变原有列表,而是得到一个新的排序号的列表
# 和sorted不同之处还有sorted可作用于所有可迭代对象,sort只能作用于列表
print(list2)
'''
def getKey(k):
    return k[1]

res = list2.sort(key=getKey)  # sort()是对象方法,注意调用使用点
print(list2)

res = list2.sort(key=getKey, reverse=True)
print(list2)

3.列表乱序排列

import random
list5 = [1, 2, 3, 4, 5]
res5 = random.shuffle(list5)
print(list5)
print(res5)  # 注意:没有返回值,直接乱序排列原有的列表顺序

4.翻转列表

res6 = list5.reverse()
print(list5)  # 注意:没有返回值,直接翻转排列原有的列表顺序

res6 = list5[::-1]  # 翻转列表
print(list5)

print(res6[5:2:-1])  # 5到2翻转列表,取不到2的值

 

部分文字内容为Python自学网原创作品,转载请注明出处!视频内容已申请版权,切勿转载!
回顶部