1.已知一个数字列表,求列表中心元素
a = [12, 1, 2, 4, 6, 7, 99]
x = a.pop(3)
print(x)
2.已知一个数字列表,求所有元素和。
sum1 = 0
a = [12, 1, 2, 4, 6, 7, 99]
for x in a:
sum1 += x
print(sum1)
3.已知一个数字列表,输出所有奇数下标元素
for x in range(len(a)):
if a[x] & 1 == 1:
print(x)
for x in a:
if x & 1 == 1:
print(a.index(x))
4.已知一个数字列表,输出所有元素中,值为奇数的元素。
a = [12, 1, 2, 4, 6, 7, 99]
for x in a:
if x & 1 ==1:
print(x)
5.已知一个数字列表,将所有元素乘二。
a = [12, 1, 2, 4, 6, 7, 99]
for x in a:
x *= 2
print(x)
6.有一个长度是10的列表,数组内有10个人名,要求去掉重复的
names = ['甲', '甲', '甲', '乙', '乙', '乙', '丙', '丙', '丁']
for name1 in names:
count = 0
for name2 in names:
if name1 == name2:
count += 1
for x in range(count - 1):
names.remove(name1)
print(names)
7.已经一个数字列表(数字大小在0~6535之间), 将列表转换成数字对应的字符列表
例如: list1 = [97, 98, 99] -> list1 = ['a', 'b', 'c']
nums = [111, 106, 122, 116]
for x in nums:
x = chr(x)
print(x)
8.用一个列表来保存一个节目的所有分数,求平均分数(去掉一个最高分,去掉一个最低分,求最后得分)
scores = [89, 78, 76, 45, 97]
max = 0
min = 100
sum1 = 0
for i in scores:
if max < i:
max = i
for t in scores:
if min > t:
min = t
scores.remove(max)
scores.remove(min)
l = len(scores)
for z in scores:
sum1 += z
print(sum1 / l)
9.有两个列表A和B,使用列表C来获取两个列表中公共的元素
例如: A = [1, 'a', 4, 90] B = ['a', 8, 'j', 1] --> C = [1, 'a']
A, B, C = [1, 5, 9, 13, 'tolkien', 'silmarillion'], [1, 9, 75, 21,'silmarillion'], []
for e1 in A:
for e2 in B:
if e1 == e2:
C.append(e1)
print(C)
10.有一个数字列表,获取这个列表中的最大值.(注意: 不能使用max函数)
例如: nums = [19, 89, 90, 600, 1] —> 600
nums = [213, 345, 2149, 124, 98]
max = 0
for x in nums:
if x > max:
max = x
print(max)
11.获取列表中出现次数最多的元素
例如:nums = [1, 2, 3,1,4,2,1,3,7,3,3] —> 打印:3
l = [13, 2131, 124, 13, 565, 13, 124]
j = 0
max = 0 #max代表最大的出现频率
count = 0
for x in l: #x遍历l中所有元素
for y in l: #x每取l中一个值,y就遍历l中所有元素
if x == y:
count += 1
"""
从x第二次取值开始,都会将不同元素出现的次数与前一个元素出现的次数作比较,如果后面的元素出现的次数大于前
面的元素,则j所代表的频率最高的元素就变成后面那个元素,最终,最大的出现频率就会输出该频率对应的元素
"""
if count > max: #如果count大于0
j = x #就把l中元素x的值赋给j,
max = count #然后把x代表的元素出现的次数值赋给max
count = 0 #然后再将count归零
print(j)