Day6-作业
2018-11-12 本文已影响0人
神奇嘟嘟侠
1.已知一个列表,求列表中心元素。
list1 = [1,'asd',123,324,'dfs']
index = int(len(list1))
if index & 1 == 0:
print(list1[int(index>>1)],list1[int((index>>1) -1)])
else:
print(list1[int((index-1)>>1)])
2.已知一个列表,求所有元素和。
list1 = [1,23,32,345,3456,34,985]
print(sum(list1))
3.已知一个列表,输出所有奇数下标元素。
list1 = [1,23,32,345,3456,34,985]
list2 = []
for index in range(1,len(list1),2):
item = list1[index]
list2.append(item)
print(list2)
4.已知一个列表,输出所有元素中,值为奇数的。
list1 = [1,23,32,345,3456,34,985]
index = 0
while index < len(list1):
if list1[index] & 1 == 0:
del list1[index]
continue
index += 1
print(list1)
5.已知一个列表,将所有元素乘二。
list1 = [1,23,32,345,3456,34,985,'123','da']
list2 = []
index = 0
while index < len(list1):
item = list1[index] * 2
list2.append(item)
index += 1
print(list2)
6.有一个长度是10的列表,数组内有10个人名,要求去掉重复的
例如:names = ['张三', '李四', '大黄', '张三'] -> names = ['张三', '李四', '大黄']
names = ['a','b','c','d','e','b','f','a','c']
index = 0
while index < len(names):
i = 1
while index + i < len(names):
if names[index] == names[index+i]:
names.remove(names[index])
continue
i += 1
index += 1
print(names)
7.已经一个数字列表(数字大小在0~6535之间), 将列表转换成数字对应的字符列表
例如: list1 = [97, 98, 99] -> list1 = ['a', 'b', 'c']
list1 = [4,654,1234,5214,1236,214,368]
list2 = []
index = 0
while index < len(list1):
item = chr(list1[index])
list2.append(item)
index += 1
print(list2)
8.用一个列表来保存一个节目的所有分数,求平均分数(去掉一个最高分,去掉一个最低分,求最后得分)
score = [3,5,4,8,6,1,5,8,7,9,9]
score.remove(max(score))
score.remove(min(score))
index = 0
item1 = 0
while index < len(score):
item = score[index]
item1 += item
index += 1
print(item1/len(score))
9.有另个列表A和B,使用列表C来获取两个列表中公共的元素
例如: A = [1, 'a', 4, 90] B = ['a', 8, 'j', 1] --> C = [1, 'a']