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

1.自己写的,写死了,不咋地,嘿嘿:

import random
list1 = []
for i in range(1,9):
    list1.append(random.randint(1,9))
    i += 1
print(f"原列表:{list1}",end=" ")
print("")

list1[0::2] = sorted(list1[0::2],reverse=True)
print(f"新列表:{list1}")

2.百度到的一篇文章写的,对我的测试思想很有帮助:

import random
list_data=[] #空列表
for i in range(0,20): #列表下标是从0到19,不包括20
    result= random.randint(0,100)   #生成  0-100之间的随机整数,每次生成1个,所以用上面的for循环控制次数
    list_data.append(result)        #添加到列表中
print(list_data)
list_data[0::2]=sorted(list_data[0::2],reverse=True)    #将列表中偶数下表的元素降序排序,赋值给原列表
print(list_data)

引用地址:

https://blog.csdn.net/TIGER7401/article/details/129895427

3.老师教的:

import random
x = [random.randint(0,100) for i in range(20)] #推导式从0到100个随机数中取20个
print(x) # 打印x看看原列表
y = x[::2]
print(y) # 打印偶数元素
y.sort(reverse=True) #对筛选出来的元素降序排序
print(y)
x[::2] = y  # 重新赋值
print(x)

你可能感兴趣的:(python,开发语言)