首页 > 试题广场 >

4[问答] 编写程序,生成一个包含20个随机整数的列表,然后

[问答题]
编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变。(提示:使用切片。)
import random x = [random.randint(0,100) for i in range(20)] print(x) y = x[0:20:2] y.sort(reverse=True) x[0:20:2] = y print(x)
发表于 2019-02-11 20:34:56 回复(0)
import random
lst = []
for i in range(20):
    lst.append(random.randint(1, 100))
lst2 = lst[:: 2]
lst2.sort(reverse=True)
for a in range(0, len(lst2)):
    lst[a * 2] = lst2[a]
print(lst)

发表于 2020-05-30 21:06:44 回复(0)
#!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)

发表于 2019-03-01 09:36:54 回复(0)
import random
a = [ random.randint(1, 100) for i in range(20) ]
a1 = sorted(a[::2], reverse=True)
a2 = a[1::2]
ret = ()
for i in zip(a1, a2):
    ret+=i
return list(ret)
发表于 2020-06-03 22:31:56 回复(0)
import  random
def main():
    a[]
    for i in rang(20):
        a.append(random.randint(0,100))
    print(a)
    b=a[::2]
    b.sort(reverse=True)
    a[::2]=b
if__name__='__main__':
    main()
    

发表于 2019-07-07 16:58:34 回复(0)
   import random
   
   def main():
       line_list = list()
       for i in range(20):
           line_list.append(random.randint(0, 100))
       # 排序
       line = line_list[0:20:2]
       line.sort(reverse = True)
      
      i = 0 
      for j in range(0,2,2):
          line_list[j] = line[i]
          i += 1
  
  if __name__ == "__main__":
      main()



发表于 2019-03-27 15:35:55 回复(0)
import random
list = [random.randint(0, 100) for i in range(20)]
print("初始列表:" + str(list))
list1 = sorted(list[::2], reverse=True)
print("偶数下标降序降序:" + str(list1))
list[::2] = list1[::]
print('整合后列表' + str(list))

发表于 2021-06-16 14:01:02 回复(0)
import random a=[random.randint(0,100) for i in range(50)] print(a) b=a[::2] b.sort(reverse=True) a[::2]=b print(a)
发表于 2020-10-30 21:04:17 回复(0)
import random
a = [random.randint(1, 100) for i in range(0,20)]
b = []
c = []
d = []
print(a)
for i in a:
    if i % 2 == 0:
        b.append(i)
        b.sort(reverse=True)
    else:
        d.append(i)

m = n = 0
for i in a:
    if i % 2 == 0:
        c.append(b[n])
        n += 1
    else:
        c.append(d[m])
        m += 1
print(c)

发表于 2020-08-06 19:53:09 回复(0)
import random
lst1 = [random.randint(0,100) for i in range(20)]
print(lst1)
lst2 = lst1[::2]
lst2.sort(reverse=True)
for i in range(0, len(lst2)):
    lst1[i*2] = lst2[i]
print(lst1)


发表于 2020-07-31 15:28:57 回复(0)

发表于 2020-05-09 15:20:42 回复(1)
import random
list1 = [random.randint(1, 100) for i in range(20)]
print(list1)
# 截取list1中下标为偶数的元素
list2 = list1[::2]
list2.sort(reverse=True)
(3294)# 将排序后的元素替换原来列表中的元素
for i in range(0, len(list2), 1):
    list1[2 * i] = list2[i]
print(list1)

发表于 2020-03-22 16:51:18 回复(0)
import random  
def main():
    a = list(random.randint(0, 100) for _ in range(20))
    b = a[::2]
    b.sort(reverse=True)  
    for i in range(10):
        a[2*i] = b[i] print(a) 
if __name__ == "__main__":
    main()



编辑于 2019-12-28 21:21:13 回复(0)
 
import random def fun():  ls = [] for i in range(20):  ls.append(random.randint(1,100))
    a = ls[::2] print a.sort(reverse=True) print ::2] = a print ls, len(ls)

fun()

发表于 2019-05-19 21:36:59 回复(0)
import random
a = [random.randint(1,100) for _ in range(10)]
print(a)
b = sorted(a[::2], reverse=True)
a[::2] = b[::]
print(a)
发表于 2019-05-01 21:05:27 回复(0)
import random
def main():
    a[]
    for i in rang(20):
        a.append(random.randint(0,100))
    print(a)
    b=a[::2]
    b.sort(reverse=True)
    a[::2]=b
if __name__='__main__':
    main()
   


发表于 2019-04-23 20:38:03 回复(0)
list = [random.randint(0,100) for i in range(20)]
print("生成列表:"+str(list))
list1 = sorted(list[::2],reverse=True)
print("取偶数下标降序:"+str(list1))
list[::2] =list1[::]
print('完成需求'+str(list))

发表于 2019-04-07 17:04:02 回复(0)
import random


def main():
    """
    编写程序,生成一个包含20个随机整数的列表,
    然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变
    :return
    """
    start_list = list()
    for i in range(10):
        start_list.append(random.randint(0, 100))
    print('start_list:', start_list)

    part_list = start_list[::2]
    print('part_list:', part_list)

    part_list.sort(reverse=True)
    print('sorted_part_list:', part_list)

    # 1
    for i in range(5):
        if i % 2 == 0:
            start_list[int(i * 2)] = part_list[i]
        else:
            pass

    # 2
    # start_list[::2] = part_list[::]

    # 3
    # i = 0
    # for j in range(0,20,2):
    #     start_list[j] = part_list[i]
    #     i += 1


    print('result:', start_list)


if __name__ == '__main__':
    main()
编辑于 2019-04-07 16:59:18 回复(0)

import random

def solu():
a = []
for i in range(20):
a.append(random.randint(1,99))
print(a)
b = a[:20:2]
b.sort(reverse=True)
a[::2] = b[::]
print(a)
solu()

发表于 2019-04-07 10:09:05 回复(0)
ran = [random.randint(0,100) for _ in range(20)] print(ran)
two_down = sorted(ran[::2]) 
for i in range(0,20,2):
    ran[i] = two_down[i//2] print(ran)


发表于 2019-03-05 13:07:12 回复(0)