1.已知一個數(shù)字列表僻孝,求列表中心元素导帝。
str = input('請輸入元素大于3個數(shù)組如(1,2,3,5,6,7):')
def get_mid(list):
index = len(list)
key = index // 2
if index % 2 == 0:
print(list[key-1], list[key])
else:
print(list[key])
get_mid(str.split(','))
2.已知一個數(shù)字列表,求所有元素和穿铆。
list = [1,2,3,4,5,6]
sum = 0
for num in list:
sum +=num
print(sum)
3.已知一個數(shù)字列表您单,輸出所有奇數(shù)下標元素。
list = [1,2,3,4,5,6]
for i in range(len(list)):
if i&1 == 1:
print(list[i])
4.已知一個數(shù)字列表荞雏,輸出所有元素中虐秦,值為奇數(shù)的元素。
list = [1,2,3,4,5,6]
for i in range(len(list)):
if i&1 == 1:
print(list[i])
5.已知一個數(shù)字列表凤优,將所有元素乘二悦陋。
例如:nums = [1, 2, 3, 4] —> nums = [2, 4, 6, 8]
list = [1,2,3,4,5,6]
for index in range(len(list)):
list[index] *= 2
print(list)
6.有一個長度是10的列表,數(shù)組內(nèi)有10個人名筑辨,要求去掉重復(fù)的
例如:names = ['張三', '李四', '大黃', '張三'] -> names = ['張三', '李四', '大黃']
方法一:
names = ['張三', '李四', '大黃', '張三' ,'張三', '李四', '大黃', '張三']
need_names = []
for name in names:
if name not in need_names:
need_names.append(name)
print(need_names)
方法二:
names = ['張三', '李四', '大黃', '張三' ,'張三', '李四', '大黃', '張三']
list2 = set(names)
print(list2)
7.已經(jīng)一個數(shù)字列表(數(shù)字大小在0~6535之間), 將列表轉(zhuǎn)換成數(shù)字對應(yīng)的字符列表
例如: list1 = [97, 98, 99] -> list1 = ['a', 'b', 'c']
ist1 = [97,98,99,101,152,6468]
list2 = []
for num in list1:
list2.append(chr(num))
print(list2)
8.用一個列表來保存一個節(jié)目的所有分數(shù)俺驶,求平均分數(shù)(去掉一個最高分,去掉一個最低分棍辕,求最后得分)
scores = [92,96,98,100,30,95]
#冒泡排序
n = len(scores)
for i in range(n):
for j in range(i,n):
if scores[i]>scores[j]:
scores[i],scores[j]=scores[j],scores[i]
sum = 0
for num in scores[1:-1]:
sum+=num
print('平均分是:'+str(sum/(len(scores)-2)))
9.有兩個列表A和B暮现,使用列表C來獲取兩個列表中公共的元素
例如: A = [1, 'a', 4, 90] B = ['a', 8, 'j', 1] --> C = [1, 'a']
#方法1
A = [1, 'a', 4, 90]
B = ['a', 8, 'j', 1]
c = []
for a in A:
for b in B:
if a ==b :
c.append(a)
print(c)
#方法2
A = [1, 'a', 4, 90]
B = ['a', 8, 'j', 1]
c = []
for a in A:
if a in B:
c.append(a)
print(c)
10.有一個數(shù)字列表,獲取這個列表中的最大值.(注意: 不能使用max函數(shù))
例如: nums = [19, 89, 90, 600, 1] —> 600
nums = [19, 89, 90, 600, 1]
n = len(nums)
for i in range(n):
for j in range(i,n):
if nums[i]>nums[j]:
nums[i],nums[j]=nums[j],nums[i]
print(nums[-1])
11.獲取列表中出現(xiàn)次數(shù)最多的元素
例如:nums = [1, 2, 3,1,4,2,1,3,7,3,3] —> 打印:3
nums = [1, 2, 3, 1, 4, 2, 1, 3, 7, 3, 3]
temp = nums[:]
max_time = 0
cur_time = 1
pre_num = None
for i in nums:
for t in temp:
if i == t:
cur_time += 1
max_time = max((cur_time, max_time))
else:
pre_num = i
cur_time = 1
print(max_time,pre_num)