Python初学者项目练习9--对简单列表元素排序

📅 2026/7/6 19:54:06 👁️ 阅读次数 📝 编程学习
Python初学者项目练习9--对简单列表元素排序

一、练习题目

给定一个简单列表,对其元素进行排序

简单列表:元素类型不是复合类型(列表/元组/字典)
示例:
形式1:[10,20,30,40]
形式2:[‘aa’, ‘bb’, ‘cc’]

二、代码

1.初始版本–升序

代码如下:

list1=[10,5,3,78]# 对列表进行排序(原地排序)#sort(key=None,reverse=False)默认#key(可选):接收一个函数作为参数。该函数会在每个元素上调用,其返回值将作为排序的依据。如果未提供,则直接比较元素本身。#reverse(可选):接收一个布尔值。如果为True,则列表将降序排列。如果为False,则列表将升序排列。list1.sort()print(list1)

[3, 5, 10, 78]
原地排序,升序

2.其他版本

代码如下:

list1=[10,5,3,78]list1.sort(reverse=True)print(list1)

[78, 10, 5, 3]
原地排序,降序

3.其他版本

代码如下:

list1=[10,5,3,78]# 对列表排序,但是不改变原列表顺序#sorted(iterable,key=None,reverse=False)#iterable:想要排序的可迭代对象#key(可选):接收一个函数作为参数。这个函数会在每个元素上调用,其返回值作为排序的依据。#reverse(可选):接收一个布尔值。如果为True,则是降序排列。如果为False,则是升序排列#list2=sorted(list1)#print(list2)#print(list1)

[3, 5, 10, 78]
[10, 5, 3, 78]


总结

  1. 原地排序:
    sort(key=None, reverse=False) #默认,升序
    sort(key=None, reverse=True) #降序
  2. 不改变原列表顺序:
    sorted(iterable, key=None, reverse=False)
  3. 为什么有的是X.sort, 为什么有的是 sorted(X)。为什么sorted使用方法不是
    X.sorted
    记住:
    ✅ .方法():通常是“某一种对象自己才会做的事”​
    ✅ 函数():通常是“多种对象都能做的事
  4. 下面的表格对常用的【独立函数和方法】做了总结: