python练习题__列表
Posted 逆境清醒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python练习题__列表相关的知识,希望对你有一定的参考价值。
python练习题__列表
(1)、访问列表中第一个元素的值
题 目: | mlist1 = ['Adversity Awake:', 'Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] 访问列表中第一个元素的值 |
分 析: | |
答 案: | mlist1 = ['Adversity Awake:', 'Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] # 访问第一个元素 print("访问列表第一个元素: ",mlist1[0]) |
运行结果: | 访问列表第一个元素: Adversity Awake: |
(2)、访问列表中最后一个元素的值
题 目: | mlist1 = ['Adversity Awake:', 'Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] #访问列表中最后一个元素的值 |
分 析: | |
答 案: | mlist1 = ['Adversity Awake:', 'Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] #访问列表中最后一个元素的值 print("访问列表最后一个元素: ",mlist1[-1]) |
运行结果: | 访问列表最后一个元素: self |
(3)、访问第2到第5个元素
题 目: | mlist1= ['Adversity Awake:', 'Cross', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] 访问第2到第5个元素 |
分 析: | |
答 案: | mlist1= ['Adversity Awake:', 'Cross', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] # 访问第2到第5个元素 print ("访问第2到第5个元素:", mlist1[2:5]) |
运行结果: | 访问第2到第5个元素: ['the', 'stars', 'over'] |
(4)、使用 append() 添加元素
题 目: | 使用 append() 往mlist1= []中添加元素'Adversity','Awake' mlist1= [] |
分 析: | |
答 案: | mlist1= [] mlist1.append('Adversity') mlist1.append('Awake') print(mlist1) |
运行结果: | ['Adversity', 'Awake'] |
(5)、删除列表元素
题 目: | mlist1 = ['Adversity Awake:','maybe','Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] 删除索引为 1 的值 |
分 析: | |
答 案: | #删除列表元素 mlist1 = ['Adversity Awake:','maybe','Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] print (mlist1) del (mlist1[1]) print ("删除索引为 1 的值后 : ") print (mlist1) |
运行结果: | 删除索引为 1 的值后 : ['Adversity Awake:', 'Cross ', 'the', 'stars', 'over', 'the', 'moon', 'to', 'meet', 'your', 'better', 'self'] |
(6)、列出列表 min()的值 和 max()的值
题 目: | 创建一个列表mlist2,其中包含[1, 500]中的所有整数,列出列表 min()的值 和 max()的值 |
分 析: | |
答 案: | mlist2=[] for i in range(1,501): mlist2.append(i) print("最小值是:",min(mlist2)) print("最大值是:",max(mlist2)) |
运行结果: | 最小值是: 1 最大值是: 500 |
(7)、用函数 sum()相加列表的所有的值。
题 目: | 创建一个列表mlist2,其中包含[1, 500]中的所有整数, 调用函数 sum(),相加这个列表的所有的值。 |
分 析: | |
答 案: | mlist2=[] for i in range(1,501): mlist2.append(i) sum1=sum(mlist2) print("列表累计总和值是:",sum1) |
运行结果: | 列表累计总和值是: 125250 |
(8)、求取列表中的平均值
题 目: | 创建一个列表mlist2,其中包含[1, 500]中的所有整数, 对这个列表的所有整数求取平均值,直接保留一位小数。 |
分 析: | |
答 案: | mlist2=[] for i in range(1,501): mlist2.append(i) sum1=sum(mlist2) print("列表累计总和值是:",sum1) average=sum1/500 print("列表求取平均值是:",":.1f".format(average)) |
运行结果: | 列表求取平均值是: 250.5 |
(9)、列出列表中的所有偶数
题 目: | 用函数 range()创建一个列表mlist,其中包含 [0, 19] 中的所有偶数;再用for 循环将这些数字都打印出来(每个数字独占一行)。 |
分 析: | |
答 案: | mlist=[] for i in range(0,19,2): mlist.append(i) for j in mlist: print("".format(j)) |
运行结果: | 0 2 4 6 8 10 12 14 16 18 |
(10)、创建能被5整除的数字列表mlist
题 目: | 创建一个列表mlist,其中包括 [1, 50] 内全部能被5整除的数字;再用for 循环将这个列表打印出来。 |
分 析: | |
答 案: | mlist=[] for i in range(5,51,5): mlist.append(i) for j in mlist: print("".format(j)) |
运行结果: | 5 10 15 20 25 30 35 40 45 50 |
(11)、次方运算
题 目: | 创建一个空列表mlist,使用for循环、range()函数和append()函数令列表mlist包含底数4的 [1, 5] 次方,再将列表mlist打印出来。(* 代表乘法运算, ** 代表次方运算。) |
分 析: | |
答 案: | mlist=[] for i in range(1,6): j=4**i mlist.append(j) print("列表值为:") for m in mlist: print("".format(m)) |
运行结果: | 列表值为: 4 16 64 256 1024 |
(12)、生成立方数列表
题 目: | 生成一个列表mlist,其中包含前 10 个整数(即[1, 10])的立方。 再用print()语句以列表形式打印出来(以列表形式,即两边带方括号)。 |
分 析: | |
答 案: | mlist=[] print("列表值为:") for i in range(1,9): j=pow(i,3) mlist.append(j) print(mlist) |
运行结果: | 列表值为: [1, 8, 27, 64, 125, 216, 343, 512] |
(13)、对列表中的数字从小到大排序。
题 目: | 对列表 mlist= [38,4,274,60,12,769,962,96] 中的数字从小到大排序。 |
分 析: | |
答 案: | mlist= [38,4,274,60,12,769,962,96] print(sorted(mlist)) |
运行结果: | [4, 12, 38, 60, 96, 274, 769, 962] |
(14)、找出列表中最大值和最小值。
题 目: | 找出列表 mlist= [38,4,274,60,12,769,962,96] 中最大值和最小值。 |
分 析: | |
答 案: | mlist = [38,4,274,60,12,769,962,96] print('max():',max(mlist)) print('min():',min(mlist)) |
运行结果: | max(): 962 min(): 4 |
(15)、找出列表中最大的三个值。
题 目: | 找出列表 mlist2 = [384,356,60,12,769,962,96] 中最大的三个值。 |
分 析: | |
答 案: | mlist2 = [384,356,60,12,769,962,96] print(sorted(mlist2)[-1:-4:-1]) |
运行结果: | [962, 769, 384] |
(16)、判断列表是否为空列表
题 目: | 创建列表mlist1,如果列表mlist1长度为0,打印:mlist1 是空列表! ;如果列表mlist1长度不为0,打印:mlist1 不是空列表!打印出列表值 |
分 析: | |
答 案: | mlist1=[] for i in range(1,10): mlist1.append(i) if len(mlist)==0: print("mlist1 是空列表!") print(mlist1); else: print("mlist1 不是空列表!") print(mlist1) |
运行结果: | mlist1 不是空列表! [1, 2, 3, 4, 5, 6, 7, 8, 9] |
(17)、列表转换成绝对值
题 目: | 将列表 mlist = [-384,566,-60,12,769,-962,-96] 中的数字转换成绝对值。 |
分 析: | |
答 案: | mlist = [-384,566,-60,12,769,-962,-96] m = [] for i in mlist: m.append(abs(i)) print(m) |
运行结果: | [384, 566, 60, 12, 769, 962, 96] |
(18)、反转列表
题 目: | 将列表 mlist = [3,8,4,6,7,5],反转成 [5,7,6,4,8,3], |
分 析: | |
答 案: | mlist = [3,8,4,6,7,5] print(mlist [::-1]) |
运行结果: | [5, 7, 6, 4, 8, 3] |
(19)、求取列表奇数位值
题 目: | 求取列表 mlist = [3,8,4,6,7,5] 奇数位值的数字 |
分 析: | |
答 案: | mlist = [3,8,4,6,7,5] count = 0 for i in mlist: count += 1 if count % 2 != 0: print(i) |
运行结果: | 3 4 7 |
(20)、找出列表中单词最长的一个
题 目: | 找出列表mlist=["Never","put","off","what","you","can","do","today","until","tomorrow"]中单词最长的一个。 |
分 析: | |
答 案: | mlist=["Never","put","off","what","you","can","do","today","until","tomorrow"] length = len(mlist[0]) for i in mlist: if len(i) > length: length = i print(length) |
运行结果: | tomorrow |
(21)、判断字符串是否存在于列表
题 目: | 使用 while循环 判断字符串’ maybe,’是否存在于列表 mlist=["maybe,","Judge","not","from","appearances.","人不可貌相,海水不可斗量。"]中,如果存在,则使用remove()方法删掉列表mlist中的一个字符串’maybe,’,并使用print()语句一行输出mlist列表内容。 |
分 析: | |
答 案: | mlist=["maybe,","Judge","not","from","appearances.","人不可貌相,海水不可斗量。"] while "maybe," in mlist: mlist.remove("maybe,") print("'maybe,'字符串在mlist列表中。") print("删除maybe,字符串后,mlist列表内容是:",mlist) |
运行结果: | 'maybe,'字符串在mlist列表中。 删除maybe,字符串后,mlist列表内容是: ['Judge', 'not', 'from', 'appearances.', '人不可貌相,海水不可斗量。'] |
(22)、列表运算题
题 目: | 有几堆硬币,用列表表示:mlist = [10,8,5,3,27,99]。每次只能拿一个或者两个,求最少多少次可以拿完硬币 |
分 析: | python中的"//"是算术运算符号,表示取整除,它会返回结果的整数部分,例如print(9//2),输出结果为4。 |
答 案: | count = 0 mlist = [10,8,5,3,27,99] for i in mlist: j = i % 2 if j == 0: count = i // 2 +count else: count = i // 2 +count+1 print("最少次拿完".format(count)) |
运行结果: | 最少78次拿完 |
(23)、输入学生名,打印出每个学生名中的第2个字母
题 目: | 从键盘中输入5个学生的名字,存储到列表中,然后打印出每个学生名字中的第2个字母或中文 |
分 析: | |
答 案: | i = 1 mlist = [] while i <= 5: student = input("请输入学生的姓名:") mlist.append(student) i += 1 print(mlist) for name in mlist: print("%s 的第二个字母或中文是 %s" %(name,name[1])) |
运行结果: | 请输入学生的姓名:Adversity Awake ['Adversity Awake'] 请输入学生的姓名:banner ['Adversity Awake', 'banner'] 请输入学生的姓名:orange ['Adversity Awake', 'banner', 'orange'] 请输入学生的姓名:cake ['Adversity Awake', 'banner', 'orange', 'cake'] 请输入学生的姓名:tea ['Adversity Awake', 'banner', 'orange', 'cake', 'tea'] Adversity Awake 的第二个字母或中文是 d banner 的第二个字母或中文是 a orange 的第二个字母或中文是 r cake 的第二个字母或中文是 a tea 的第二个字母或中文是 e |
(24)、打印列表的第二项
题 目: | mlist = ["苹果", "香蕉", "樱桃", "雪梨"] 打印列表的第二项 |
分 析: | 可以通过引用索引号来访问列表项 |
答 案: | mlist = ["苹果", "香蕉", "樱桃", "雪梨"] print(mlist) print('列表的第二项是:',mlist[1]) |
运行结果: | ['苹果', '香蕉', '樱桃', '雪梨'] 列表的第二项是: 香蕉 |
(25)、打印列表的最后一项
题 目: | mlist = ["苹果", "香蕉", "樱桃", "雪梨"] 打印列表的最后一项 |
分 析: | 可以通过引用索引号来访问列表项 负索引表示从末尾开始,-1 表示最后一个项目,-2 表示倒数第二个项目,依此类推。 |
答 案: | mlist = ["苹果", "香蕉", "樱桃", "雪梨"] print(mlist) print('列表的最后一项是:',mlist[-1]) |
运行结果: | ['苹果', '香蕉', '樱桃', '雪梨'] 列表的最后一项是: 香蕉 |
(26)、打印列表指定项到结尾的数据
题 目: | mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] 返回从 "樱桃" 到结尾的项目 |
分 析: | |
答 案: | mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] print(mlist) print('列表从第2项到最后一项是:',mlist[2:]) |
运行结果: | ['苹果', '香蕉', '樱桃', '橙子', '雪梨', '瓜', '芒果'] 列表从第2项到最后一项是: ['樱桃', '橙子', '雪梨', '瓜', '芒果'] |
(27)、列表从索引-4到索引-1的内容
题 目: | mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] |
分 析: | 要从列表末尾开始搜索,用负索引 |
答 案: | mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] print(mlist) print('列表从索引-4到索引-1的内容是:',mlist[-1:-4:-1]) |
运行结果: | ['苹果', '香蕉', '樱桃', '橙子', '雪梨', '瓜', '芒果'] 列表从索引-4到索引-1的内容是: ['芒果', '瓜', '雪梨'] |
(28)、遍历列表逐个打印列表中的所有项目
题 目: | 遍历列表逐个打印列表中的所有项目 mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] |
分 析: | 可以使用 for 循环遍历列表项 |
答 案: | mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] for x in mlist: print(x) |
运行结果: | 苹果 香蕉 樱桃 橙子 雪梨 瓜 芒果 |
(29)、检查列表中是否存在指定元素
题 目: | 检查列表中是否存在 "苹果" mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] |
分 析: | 如需确定列表中是否存在指定的项,可以使用 in 关键字 |
答 案: | mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] if "苹果" in mlist: print("Yes, '苹果' 是在水果列表里") |
运行结果: | Yes, '苹果' 是在水果列表里 |
(30)、打印列表中的项目数
题 目: | 打印列表中的项目数 mlist = ["苹果", "香蕉", "樱桃", "橙子", "雪梨", "瓜", "芒果"] |
分 析: | 确定列表中有多少项,使用 len() 方法 |
答 案: | mlist = ["苹果", Python_练习题_49# 3.用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb name=[‘alex‘,‘wupeiqi‘,‘yuanhao‘,‘nezha‘] def func(item): return item+‘_sb‘ ret = map(func,name) #ret是迭代器 for i in ret: print(i) ret = map(lambda item:item+‘_sb‘,name) print(list(ret))
# 4.用filter函数处理数字列表,将列表中所有的偶数筛选出来 num = [1,3,5,6,7,8] def func(x): if x%2 == 0: return True ret = filter(func,num) #ret是迭代器 print(list(ret)) ret = filter(lambda x:x%2 == 0,num) ret = filter(lambda x:True if x%2 == 0 else False,num) print(list(ret)) num = [1,3,5,6,7,8]
# 3.用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb 以上是关于python练习题__列表的主要内容,如果未能解决你的问题,请参考以下文章 |