问题描述:
编写程序,生成一个包含20个随机整数的列表,对前10个元素升序排序,后十个元素降序排序,并输出结果
问题分析:
使用列表切片,获取前十个和后十个元素,排序后赋值回原列表,然后输出
代码展示:
import random
if __name__ == '__main__':
# 产生20个随机数存入列表
num_list = list(random.randint(0, 100) for i in range(20))
print(num_list)
# 切片截取前10个数字,升序排序
# tmp_list = num_list[:10]
# tmp_list.sort()
# 赋值回原列表
# num_list[:10] = tmp_list
# 取后10个数字,做相似的操作
# tmp_list = num_list[10::]
# tmp_list.sort(reverse=True)
# num_list[10::] = tmp_list
# 简化代码
num_list[:10] = sorted(num_list[:10])
num_list[10::] = sorted(num_list[10::], reverse=True)
print(num_list)