day5作业

2018-07-21  本文已影响0人  七夜_174e

1、已知一个列表,求列表中心元素。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9]
num = len(score)
if num % 2 == 0:
    print(score[num//2-1], score[num//2])
else:
    print(score[num//2])

5

2、已知一个列表,求所有元素和。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
sum1 = 0
for num in score:
    sum1 += num
print(sum1)

55

3、已知一个列表,输出所有奇数下标元素。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in range(len(score)):
    if num % 2 != 0:
        print(score[num])
2
4
6     #列表中下标是从0开始
8
10

4、已知一个列表,输出所有元素中,值为奇数的。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in score:
    if num % 2 != 0:
        print(num)
1
3
5
7
9

5、已知一个列表,将所有元素乘2。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in score[:]:
    score.remove(num)
    num *= 2
    score.append(num)
print(score)

[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

6、已知一个列表,将所有元素加到第一个元素中。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in score[:]:
    score[0] += num
print(score)
[56, 2, 3, 4, 5, 6, 7, 8, 9, 10]

7、已知一个列表a,将奇数位置元素存到b列表中,偶数元素存到c列表中。

lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
listb = []
listc = []
sum1 = len(lista)
for num in range(sum1):
    if num % 2 != 0:
        listb.append(lista[num])
    else:
        listc.append(lista[num])
print(listb, listc, sep='\n')

[2, 4, 6, 8, 10]
[1, 3, 5, 7, 9]

8、把A列表的前5个元素复制到B列表中。

score = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
listb = []
for num in range(5):
        listb.append(score[num])
print(listb)
[1, 2, 3, 4, 5]

9、把1--36分别放入列表中,计算列表数组对角元素之和。6*6的列表

list1 = [[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18], [19, 20, 21, 22, 23, 24], [25, 26, 27, 28, 29, 30], [31, 32, 33, 34, 35, 36]]
sum1 = 0
for i in range(len(list1)):
    for j in range(len(list1[1])):
        a = list1[i]
        b = a[j]
        c = a[-j-1]
        if i == j:
            sum1 = b + sum1 + c
print('对角元素之和是%d' % sum1)

对角元素之和是111

10、有一个长度为10的列表,列表内有10个不重复的数字,要求按从大到小排序。

list1 = [321, 21, 421, 53, 232, 12, 324, 4, 23, 99]
list2 = []
for i in range(len(list1[:])):
    list2.append(max(list1))
    list1.remove(max(list1))

list1 = list2[:]
print(list1)

[421, 324, 321, 232, 99, 53, 23, 21, 12, 4]

11、有一个长度是10的列表,要求删除某一个位置的元素。

list1 = [321, 21, 421, 53, 232, 12, 324, 4, 23, 99]
del1 = int(input('请输入要删除的元素的下标:'))
while True:
    if del1 >= len(list1) or del1 < -(len(list1)):
        print('超出范围,请重新输入')
        del1 = int(input('请输入要删除的元素的下标:')) 
    else:
        print(list1.pop(del1))
        print(list1)
        break

12、有一个长度是10的列表,按递增排序,用户输入一个数,插入合适的位置。

list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
add1 = int(input('请输入要增加的元素:'))
num1 = 0

for i in list1:
    if add1 > i:
        num1 += 1
    else:
        break

list1.insert(num1, add1)
print(list1)

13、有一个长度是10的列表,数组内有10个人名,要求去掉重复的。

list1 = ['Aero', 'Jack', 'Jack', 'Jack', 'Audi', 'Audi', 'Aero', 'Amadeus', 'Galaxy', 'Vinic da']
list3 = list1[::-1]

for i in list1:
    count = 0
    for j in list3:
        if i == j:
            count += 1
        if count == 2:
            list3.remove(j)
            count = 1

list1 = list3[::-1]
print(list1)

['Aero', 'Jack', 'Audi', 'Amadeus', 'Galaxy', 'Vinic da']

14、把A列表的第三到第六位之间的元素删除。

list1 = ['Aero', 'Jack', 'Jack', 'Jack', 'Audi', 'Audi', 'Aero', 'Amadeus', 'Galaxy', 'Vinic da']
for i in range(2):
    del list1[3]
print(list1)
['Aero', 'Jack', 'Jack', 'Audi', 'Aero', 'Amadeus', 'Galaxy', 'Vinic da']

15、已知A列表,B列表,定义一个列表C,要求C包含A,B数组中的数据。(无重复值)

list1 = [1, 3, 5, 5, 6, 8, 9]
list2 = [3, 7, 10, 99, 11, 9, 5]
list3 = list1 + list2
print(list3)
list4 = list3[::-1]
for i in list3:
    count = 0
    for j in list4:
        if i == j:
            count += 1
        if count == 2:
            list4.remove(j)
            count = 1
list3 = list4[::-1]
print(list3)
[1, 3, 5, 5, 6, 8, 9, 3, 7, 10, 99, 11, 9, 5]
[1, 3, 5, 6, 8, 9, 7, 10, 99, 11]
上一篇下一篇

猜你喜欢

热点阅读