一、习题
1、随机函数、切片
编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标元素进行降序排列,奇数下标元素不变。(提示:使用切片)
二、参考答案
1、随机函数、切片
import random
# 列表推导式
rad_list = [random.randint(0,100) for i in range(20)]
print('初始序列:\t',rad_list)
# 获取所有的偶数下标列表,利用切片获取偶数下标元素
even_list = rad_list[::2]
print('偶数下标序列:\t',even_list)
# 排序方法 sort 默认升序;sort函数会改变原有的序列,使用sorted()不会改变原有序列
even_list.sort(reverse=True)
print('排序后序列:\t',even_list)
# 将排序完成后的序列插入回原序列中,利用切片给偶数下标元素赋值
rad_list[::2] = even_list
print('变更完成序列:\t',rad_list)