Python列表任务:实现通勤距离从远到近排序的函数
Python列表降序排序实现方案
问题场景
某公司员工通过在线调查分享了自己的通勤驾驶距离(单位:英里),Python按员工提交顺序自动将这些距离存入名为“distances”的列表。管理层要求将列表按距离从最长到最短排序。
需要补全函数完成以下操作:
- 对传入的“distances”列表进行排序
- 反转排序顺序,使其从最长距离到最短距离
- 返回修改后的“distances”列表
初始代码框架:
def sort_distance(distances): ___ # Sort the list ___ # Reverse the order of the list return distances print(sort_distance([2,4,0,15,8,9])) # Should print [15, 9, 8, 4, 2, 0]
补全后的代码
分步实现版本
def sort_distance(distances): distances.sort() # Sort the list distances.reverse() # Reverse the order of the list return distances print(sort_distance([2,4,0,15,8,9])) # Output: [15, 9, 8, 4, 2, 0]
代码说明
distances.sort():调用列表内置的sort()方法,默认按升序(从小到大)排序,直接修改原列表。distances.reverse():调用reverse()方法反转已排序的列表,得到降序(从大到小)结果,同样直接修改原列表。
简化实现版本
可以一步完成降序排序,省去单独反转的步骤:
def sort_distance(distances): distances.sort(reverse=True) # 直接按降序排序 return distances print(sort_distance([2,4,0,15,8,9])) # Output: [15, 9, 8, 4, 2, 0]
内容的提问来源于stack exchange,提问作者tawfik 123
相关产品推荐
相关产品推荐

