day5列表练习题

list_all = [12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
  • ##### 已知一个列表,求列表中心元素。
print(list_all)
if (len(list_all) % 2) == 0:
    a = int(len(list_all) / 2)
    print(list_all[a-1], list_all[a])
else:
    a = int(len(list_all) // 2)
    print(list_all[a])

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
448 12
  • ##### 已知一个列表,求所有元素和。
print(list_all)
sum1 = sum(list_all)
print(sum1)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
1212
  • ##### 已知一个列表,输出所有奇数下标元素。
print(list_all)
list_1 = []
for i in range(0, len(list_all)):
    if list_all[i] % 2:
        list_1.append(i)
print(list_1)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[1, 3, 9, 11]
  • ##### 已知一个列表,输出所有元素中,值为奇数的。
print(list_all)
list_2 = []
for i in range(0, len(list_all)):
    if list_all[i] % 2:
        list_2.append(list_all[i])
print(list_2)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[45, 59, 151, 15]
  • ##### 已知一个列表,将所有元素乘二。
print(list_all)
list3 = []
for x in list_all:
    list3.append(x * 2)
print(list3)

[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[24, 90, 156, 118, 652, 896, 24, 8, 16, 302, 108, 30]
  • ##### 已知一个列表,将所有元素加到第一个元素中。
print(list_all)
list3 = list_all[:]
list3[0] = sum(list_all)
print(list3)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[1212, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
  • ##### 已知一个列表A,将奇数位置元素存到B列表中,偶数元素存到C列表中。
print(list_all)
list_odd = []
list_even = []
for x in list_all:
    if x % 2 == 0:
        list_even.append(x)
    else:
        list_odd.append(x)
print(list_odd,list_even)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[45, 59, 151, 15] [12, 78, 326, 448, 12, 4, 8, 54]
  • ##### 把A列表的前5个元素复制到B列表中。
print(list_all)
list_a = list_all[:]
list_b = []
for x in list_a[0:5]:
    list_b.append(x)
print(list_b)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[12, 45, 78, 59, 326]
  • ##### 把1–36分别放入列表中,计算列表数组对角元素之和。6 * 6的列表
str_1 = []
str_2 = []
str_3 = []
for i in range(1, 37):
    str_1.append(i)

for a in range(0, 6):
    a = a*7
    b = str_1[a]
    str_2.append(b)

for a in range(1, 7):
    a = a*5
    b = str_1[a]
    str_3.append(b)
sum1 = sum(str_2+str_3)
print(sum1)

输出结果:
222
  • ##### 10.有一个长度是10的列表,列表内有10个不重复的数字,要求按从大到小排序。
str1 = [234, 546, 74553, 26343, 745, 523, 7345, 2, 62, 23]

for i in range(0, 10):
    for j in range(0, 10):
        if str1[i] < str1[j]:
            str1[i], str1[j] = str1[j], str1[i]
print(str1)

输出结果:
[2, 23, 62, 234, 523, 546, 745, 7345, 26343, 74553]
  • ##### 有一个长度是10的列表,按递增排列,用户输入一个数,插入适当位置。
list_1 = [2, 23, 62, 234, 523, 546, 745, 7345, 26343, 74553]
print(list_1)
number = int(input("请输入你想要插入的数:"))
list_1.append(number)
for i in range(0, len(list_1)):
    for j in range(0, len(list_1)):
        if list_1[i] < list_1[j]:
            list_1[i], list_1[j] = list_1[j], list_1[i]
print(list_1)

输出结果:
[2, 23, 62, 234, 523, 546, 745, 7345, 26343, 74553]
请输入你想要插入的数:90
[2, 23, 62, 90, 234, 523, 546, 745, 7345, 26343, 74553]
  • ##### 有一个长度是10的列表,数组内有10个人名,要求去掉重复的
names = ['aaa', 'bbb', 'ccc', 'aaa', 'ddd', 'bbb', 'kkk', 'ooo', 'aaa', 'qqq']
print("去除重复名字前", names)
new_names = names[:]
k = 0
for i in names:
    k = 0
    for j in new_names:
        if i == j:
            k += 1
        if k == 2:
            new_names.remove(j)
            k = 1
print('去除重复名字后', new_names)

输出结果:
去除重复名字前 ['aaa', 'bbb', 'ccc', 'aaa', 'ddd', 'bbb', 'kkk', 'ooo', 'aaa', 'qqq']
去除重复名字后 ['ccc', 'ddd', 'bbb', 'kkk', 'ooo', 'aaa', 'qqq']
  • ##### 把A列表的第三到第六位之间的元素删除
list_all = [12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
list1 = list_all[:]
for _ in range(0, 6-3+1):
    del list1[2]
print(list_all)
print(list1)

输出结果:
[12, 45, 78, 59, 326, 448, 12, 4, 8, 151, 54, 15]
[12, 45, 12, 4, 8, 151, 54, 15]
  • ##### 已知A列表,B列表,定义一个列表C,要求C包含A,B数组中的数据(无重复值)
list_a = [12, 45, 12, 4, 8, 151, 54, 15]
list_b = ['aaa', 'bbb', 'ccc', 'aaa', 'ddd']
list_c = list_a + list_b
print(list_a, '\n', list_b)
new_c = list_c[:]
k = 0
for i in list_c:
    k = 0
    for j in new_c:
        if i == j:
            k += 1
        if k == 2:
            new_c.remove(j)
            k = 1
print(new_c)

输出结果:
[12, 45, 12, 4, 8, 151, 54, 15] 
 ['aaa', 'bbb', 'ccc', 'aaa', 'ddd']
[45, 12, 4, 8, 151, 54, 15, 'bbb', 'ccc', 'aaa', 'ddd']
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值