5道练习题,测试你掌握 python 进阶语法-lambda函数了吗? | Python技能树征题
Posted 梦想橡皮擦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5道练习题,测试你掌握 python 进阶语法-lambda函数了吗? | Python技能树征题相关的知识,希望对你有一定的参考价值。
本篇博客主要为 https://bbs.csdn.net/skill/python 频道练习题模块补充题目,暂定每天提供 5 or 6 道测试题,后面可能会更多哦~。
本篇博客对【进阶语法】→ lambda 函数 进行出题。
以下题目,默认将正确答案,放置在选项 A 位置
知识点:python 进阶语法-lambda 函数
第 1 题:
题目难度:1 星
题干(问题描述):
使用 sorted 函数 + lambda 函数实现对下述变量的排序,按照每个元组的第二项排序:
tuples = [(1, 'c'), (2, "d"), (3, 'a'), (4, 'b')]
选项 A:
tuples = [(1, 'c'), (2, "d"), (3, 'a'), (4, 'b')]
ret = sorted(tuples, key=lambda x: x[1])
print(ret)
选项 B:
tuples = [(1, 'c'), (2, "d"), (3, 'a'), (4, 'b')]
ret = sorted(tuples, key=lambda x: x[0])
print(ret)
选项 C:
tuples = [(1, 'c'), (2, "d"), (3, 'a'), (4, 'b')]
ret = sorted(tuples, key=lambda x: x)
print(ret)
选项 D:
tuples = [(1, 'c'), (2, "d"), (3, 'a'), (4, 'b')]
ret = sorted(tuples, lambda x: x)
print(ret)
正确答案:A
第 2 题:
题目难度:1 星
将下述两个列表对应位置进行求和计算,要求使用 map 函数+lambda 函数。
my_list1 = [1,2,3,4]
my_list2 = [5,6,7,8]
选项 A:
my_list1 = [1, 2, 3, 4]
my_list2 = [5, 6, 7, 8]
ret = list(map(lambda x: x[0] + x[1], zip(my_list1, my_list2)))
print(ret)
选项 B:
my_list1 = [1, 2, 3, 4]
my_list2 = [5, 6, 7, 8]
ret = list(map(lambda x: x[0] - x[1], zip(my_list1, my_list2)))
print(ret)
选项 C:
my_list1 = [1, 2, 3, 4]
my_list2 = [5, 6, 7, 8]
ret = list(map(lambda x: x[0] + x[1], (my_list1, my_list2)))
print(ret)
选项 D:
my_list1 = [1, 2, 3, 4]
my_list2 = [5, 6, 7, 8]
ret = list(map(lambda x: x[0] * x[1], (my_list1, my_list2)))
print(ret)
正确答案:A
第 3 题:
题目难度:2 星
题干(问题描述):
编写代码,实现对下述列表偶数位置的数字实现乘方操作,在对得到的新列表求和,要求使用 map 函数与 lambda 函数。
my_list1 = [1, 3, 5, 7, 9, 11, 13]
选项 A:
my_list = [1, 3, 5, 7, 9, 11, 13]
ret = sum(list(map(lambda x: x ** 2, my_list[1::2])))
print(ret)
选项 B:
my_list = [1, 3, 5, 7, 9, 11, 13]
ret = sum(list(map(lambda x: x + 2, my_list[1::2])))
print(ret)
选项 C:
my_list = [1, 3, 5, 7, 9, 11, 13]
ret = sum((map(lambda x: x + 2, my_list[1::2])))
print(ret)
选项 D:
my_list = [1, 3, 5, 7, 9, 11, 13]
ret = count(list(map(lambda x: x + 2, my_list[1::2])))
print(ret)
正确答案:A
第 4 题:
题目难度:2 星
题干(问题描述):
通过 sorted 函数与 lambda 函数,将下述列表中的数字 1 放置到列表末尾。
my_list = [1, 3, 5, 7, 1, 11, 13]
选项 A:
my_list = [1, 3, 5, 7, 1, 11, 13]
ret = sorted(my_list, key=lambda x: True if x == 1 else False)
print(ret)
选项 B:
my_list = [1, 3, 5, 7, 1, 11, 13]
ret = sorted(my_list, key=lambda x: False if x == 1 else True)
print(ret)
选项 C:
my_list = [1, 3, 5, 7, 1, 11, 13]
ret = sorted(my_list, key=lambda x: True if x != 1 else False)
print(ret)
选项 D:
my_list = [1, 3, 5, 7, 1, 11, 13]
ret = sorted(my_list, key=lambda x: True if x += 1 else False)
print(ret)
正确答案:A
第 5 题:
题目难度:2 星
题干(问题描述):
请问下述代码的运行结果是?
my_list = [1, 3, 5]
ret = (lambda x, y, z: x + y + z if x > 5 else x - y - z)(*my_list)
print(ret)
选项 A:
-7
选项 B:
9
选项 C:
None
选项 D:
异常错误
正确答案:A
试题仓库地址如下:
以上是关于5道练习题,测试你掌握 python 进阶语法-lambda函数了吗? | Python技能树征题的主要内容,如果未能解决你的问题,请参考以下文章
python 进阶语法-异常捕获预处理 5 道练习题 | Python技能树征题
Python语法学的咋样了确定不看看,这一百道习题?(41-45)
Python语法学的咋样了确定不看看,这一百道习题?(41-45)
Python语法学的咋样了,确定不看看这100道习题?(前20道)