python常见问题解答

编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变(使用切片)

 如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢。

import random
li = [random.randint(0,999) for _ in range(20)]
# 输出列表。
print(li)
#对其中偶数下标的元素进行降序排列
li[0::2] = sorted(li[0::2],reverse=True)
print(li)

 

#!usr\bin\python3
# -*- coding: utf-8 -*-
 
import random
 
list_1 = []
#生成随机整数列表
for i in range(20):
    list_1.append(random.randint(0,100))
print('生成的列表为:',list_1)
#从首位开始索引下标为偶数位元素    
for i in range(0,len(list_1),2):
    #从上一个偶数位的下一个偶数位元素开始索引
    for u in range((i+2),len(list_1),2):
        #防止索引超出范围
        if i < (len(list_1)-2):
            #比较索引元素大小
            if list_1[i] <= list_1[u]:
                #互换元素位置
                list_t = list_1[i]
                list_1[i] = list_1[u]
                list_1[u] = list_t
                
print('排序后列表为:',list_1)

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632