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]