import random num_list = [random.randint(1, 100) for _ in range(20)] print("原始列表:", num_list) even_list = sorted([num for num in num_list if num % 2 == 0], reverse=True) result_list = [] for num in num_list: if num % 2 == 0: result_list.append(even_list.pop(0)) else: result_list.append(num) print("处理后的列表:", result_list)
时间: 2024-04-28 12:23:09 浏览: 81
Python考试(有答案)(1).docx
这是一段 Python 代码,它的功能是:生成一个包含 20 个随机整数的列表,然后将其中的偶数从大到小排序,再将原始列表中的每个数按照顺序替换为排序后的偶数,如果原始列表中的数是奇数,则不做处理。最后输出处理后的列表。
具体实现:首先使用列表推导式生成一个包含 20 个随机整数的列表 num_list。然后使用列表推导式从 num_list 中筛选出所有偶数,并进行从大到小的排序,生成列表 even_list。接着创建一个空列表 result_list 用于存放处理后的列表。然后遍历 num_list 中的每个数,如果该数是偶数,则将 even_list 中的第一个数弹出并加入 result_list 中,否则将该数直接加入 result_list 中。最后输出处理后的列表 result_list。
阅读全文