目錄
1、自定義一個數字清單,擷取這個清單中的最小值
2、自定義一個數字清單,元素為10個 ,找出清單中最大數連同下标一起輸出
3、自定義一個數字清單,求清單中第二大數的下标
4、B哥去參加青年歌手大獎賽 ,有10個評委打分 ,(去掉一個最高分一個最低分)求平均分
5、定義清單,存放5個學生的成績【成績值自己設定】,獲得成績之和,平均成績,最小成績,最大成績。
6、将一個清單逆序輸出, 提示: range(6,-1,-1), [::-1]
7、完成猜拳遊戲
8、給定一個清單:将清單中指定的某個元素全部删除: count, remove
9、自定義一個清單,最大的與第一個元素交換,最小的與最後一個元素交換,輸出清單(不考慮特殊情況)
10、對稱清單. 傳入一個清單,元素類型與個數皆未知,傳回新清單,由原清單的元素正序反序拼接而成;
11、給定一個不存在重複元素的整數清單,例如[6 ,4 ,7 ,2 ,5 ,8]和一個數字,例如10, 找出兩個元素(或同一個元素加自身),并且使這兩個數的和為給定數字,并列印出來
12、有一個從小到大排好序的清單。現輸入一個數,要求按原來的規律将它插入清單中
13、清單去重, 将下面的清單中重複的元素去除, 不能使用set()
1、自定義一個數字清單,擷取這個清單中的最小值
ages = [1, -3, 2, 5, -4, 99, 7, 8, 5, 3]
min = 0
ages = [1, -3, 2, 5, -4, 99, 7, 8, 5, 3]
for i in ages:
if (i < min ):
min = i
print(min)

2、自定義一個數字清單,元素為10個 ,找出清單中最大數連同下标一起輸出
max = 0
count = 0
ages = [1, -3, 2, 5, -4, 99, 7, 8, 5, 3]
for i in range(len(ages)):
if (ages[i] > max):
max = ages[i]
count = i
print('清單中最大數是:{},下标為:{}' .format(max,count))
3、自定義一個數字清單,求清單中第二大數的下标
ages = [1, -3, 2, 5, -4, 99, 7, 8, 5, 3]
max1 = 0
max2 = 0
for i in range(len(ages)):
if ages[i] > ages[max1]:
max2 = max1
max1 = i
elif ages[i] > ages[max2]:
max2 = i
print(max2)
4、B哥去參加青年歌手大獎賽 ,有10個評委打分 ,(去掉一個最高分一個最低分)求平均分
scores = [33, 44, 88, 88, 33, 66, 77, 88, 44, 55]
max_score = min_score = scores[0]
sum1 = 0
for i in range(len(scores)):
if(max_score < scores[i]):
max_score = scores[i]
if(min_score > scores[i]):
min_score = scores[i]
sum1 +=scores[i]
print('最後的得分是:{}' .format((sum1 - max_score - min_score) / (len(scores) - 2)))
5、定義清單,存放5個學生的成績【成績值自己設定】,獲得成績之和,平均成績,最小成績,最大成績。
scores2 = [66, 77, 88, 99, 100]
s = 0
min = max = scores2[0]
for i in scores2:
s += i
if (min > i):
min = i
if (max < i):
max = i
print('成績之和為:{},平均成績為{},最小成績為:{},最大成績為:{}' .format(s,s / len(scores2),min,max))
6、将一個清單逆序輸出, 提示: range(6,-1,-1), [::-1]
scores2 = [66, 77, 88, 99, 100]
print(scores2[::-1])
7、完成猜拳遊戲
import random
computer = random.randint(1, 3)
print(computer)
print('''
-----------------------------
請輸入你的選擇(1/2/3):
1. 石頭
2. 剪刀
3. 布
-----------------------------
''')
me = int(input('輸入你的選擇:'))
if (((me == 1) and (computer == 2)) or ((me == 2) and (computer == 3))):
print('恭喜你,你赢了')
elif (me == computer):
print('平局')
else:
print('不好意思,你輸了')
8、給定一個清單:将清單中指定的某個元素全部删除: count, remove
scores2 = [66, 66,77, 88, 99,66, 100]
n = int(input('請輸入要删除的元素:'))
str = []
for i in scores2:
if (i == n):
continue
str.append(i)
print(str)
9、自定義一個清單,最大的與第一個元素交換,最小的與最後一個元素交換,輸出清單(不考慮特殊情況)
list1 = [2, 3, 4, 5, -6, 7, 8, 1]
max = min = list1[0]
max_i = min_i = 0
for i in range(len(list1)):
if (max < list1[i]):
max = list1[i]
max_i = i
if (min > list1[i]):
min = list1[i]
min_i = i
list1[0] ,list1[max_i] = list1[max_i] , list1[0]
list1[len(list1) - 1] , list1[min_i] = list1[min_i] , list1[len(list1) - 1]
print(list1)
10、對稱清單. 傳入一個清單,元素類型與個數皆未知,傳回新清單,由原清單的元素正序反序拼接而成;
如傳入["One", "Two", "Three"] 傳回['One', 'Two', 'Three', 'Three', 'Two', 'One']
list2 = ["One", "Two", "Three"]
list3 = []
for i in range(len(list2)):
list3.append(list2[i])
for j in range((len(list2) - 1),-1,-1):
list3.append(list2[j])
print(list3)
11、給定一個不存在重複元素的整數清單,例如[6 ,4 ,7 ,2 ,5 ,8]和一個數字,例如10, 找出兩個元素(或同一個元素加自身),并且使這兩個數的和為給定數字,并列印出來
例如[6 ,4 ,7 ,2 ,5 ,8]和數字10. 列印結果為: 6,4 2,8 5,5
list3 = [6, 4, 7, 2, 5, 8]
n = 10
for i in range(len(list3)):
for j in range(i,len(list3)):
if (list3[i] + list3[j] == n):
print(list3[i],list3[j])
12、有一個從小到大排好序的清單。現輸入一個數,要求按原來的規律将它插入清單中
如: [2 ,3 ,4 ,56, 67, 98] 如插入63, 100
str = [2 ,3 ,4 ,56, 67, 98]
s1 = []
n = int(input('請輸入要插入的數:'))
for i in range(len(str)):
if (str[i] < n):
s1.append(str[i])
else:
s1.append(n)
while i < len(str):
s1.append(str[i])
i += 1
break
if (i == len(str) - 1):
s1.append(n)
print(s1)
13、清單去重, 将下面的清單中重複的元素去除, 不能使用set()
list1 = [1, 2, 3 ,5 ,4 ,4 ,4 ,5 ,5 ,3 ,2 ,1]
s1 = []
for i in list1:
if i not in s1:
s1.append(i)
print(s1)