如何在Python中对10个整数进行排序?新手编程求助
在Python中对10个整数排序的方法
1. 使用内置sorted()函数
这是最便捷的方式,会返回一个新的排序后的列表,不会修改原列表:
numbers = [5, 2, 9, 1, 5, 6, 3, 8, 4, 7] # 升序排序 sorted_numbers = sorted(numbers) print(sorted_numbers) # 输出: [1, 2, 3, 4, 5, 5, 6, 7, 8, 9] # 降序排序,添加reverse=True参数 sorted_desc = sorted(numbers, reverse=True) print(sorted_desc) # 输出: [9, 8, 7, 6, 5, 5, 4, 3, 2, 1]
2. 使用列表的sort()方法
这个方法会直接修改原列表本身,没有返回值:
numbers = [5, 2, 9, 1, 5, 6, 3, 8, 4, 7] # 升序排序 numbers.sort() print(numbers) # 输出: [1, 2, 3, 4, 5, 5, 6, 7, 8, 9] # 降序排序 numbers.sort(reverse=True) print(numbers) # 输出: [9, 8, 7, 6, 5, 5, 4, 3, 2, 1]
3. 手动实现冒泡排序(理解排序逻辑)
如果想搞清楚排序的底层逻辑,可以试试手动写冒泡排序,它通过反复比较相邻元素并交换位置来完成排序:
numbers = [5, 2, 9, 1, 5, 6, 3, 8, 4, 7] n = len(numbers) # 外层循环控制排序轮次 for i in range(n): # 内层循环比较相邻元素,每轮会把最大的元素"冒泡"到末尾 for j in range(0, n - i - 1): if numbers[j] > numbers[j + 1]: # 交换两个元素的位置 numbers[j], numbers[j + 1] = numbers[j + 1], numbers[j] print(numbers) # 输出: [1, 2, 3, 4, 5, 5, 6, 7, 8, 9]
内容的提问来源于stack exchange,提问作者599 Mighty
相关产品推荐
相关产品推荐

