Python列表生成式的常见面试题及参考答案是什么
Admin 2022-08-25 群英技术资讯 1311 次浏览
在实际应用中,我们有时候会遇到“Python列表生成式的常见面试题及参考答案是什么”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“Python列表生成式的常见面试题及参考答案是什么”文章能帮助大家解决问题。之前已经有博客专门介绍了Python中的列表生成式,可能大家还不太擅长。这里推荐九个Python列表生成式的面试题(从简单到困难排序),可以帮助大家提高列表生成式的理解水平。
闲话少说,我们直接开始吧!
假设我们有以下字符串列表:
lis = ["1", "2", "3", "4", "5"]
我们希望用代码实现列表生成式用以将列表中的每个字符串转化为相应的整数,这里假设每一个列表中的元素均可以转化为整数,即样例的输出如下:
[1, 2, 3, 4, 5]
【参考答案】
lis = ["1", "2", "3", "4", "5"] answer = [int(i) for i in lis] print(answer)
假设我们有以下整数列表:
lis = [1,5,13,4,16,7]
我们希望用代码实现列表生成式用以找出上述列表中大于10的数字。即样例的输出如下:
[13, 16]
【参考答案】
lis = [1,5,13,4,16,7] answer = [i for i in lis if i>10] print(answer)
假设我们有以下整数列表:
lis = [1,12,13,14,15,2,3]
我们希望用代码实现列表生成式用以找出上述列表中大于10且可以整除3的数字。即样例的输出如下:
[12, 15]
【参考答案】
lis = [1,12,13,14,15,2,3] answer = [i for i in lis if i>10 and i%3==0] print(answer)
假设我们有以下整数列表:
lis = [1,2,4,5,7]
我们希望用代码实现列表生成式用以对上述列表中的偶数执行加1的操作。即样例的输出如下:
[1,3,5,5,7]
提示: 可以使用三目运算符
【参考答案】
lis = [1,2,4,5,7] answer = [(i+1 if i%2==0 else i) for i in lis] print(answer)
实现一个列表生成式,用以求出在数字1到100之间所有包含数字1的数字。
即样例的输出如下:
[1,10,11,12,13,14,15,16,17,18,19,21,31,41,51,61,71,81,91,100]
【参考答案】
answer = [i for i in range(1,101) if "1" in str(i)] print(answer)
假设我们有两个长度相同的列表,分别为fruits和prices , 两个列表中的元素分别如下:
fruits = ["apple", "orange", "pear"] prices = [4,5,6]
我们希望用代码实现列表生成式用以对上述两个列表进行合并,即列表中的元素为(fruit, price)形式。即样例的输出如下:
[("apple",4), ("orange",5), ("pear",6)]
提示: 推荐使用zip函数
【参考答案】
fruits = ["apple", "orange", "pear"] prices = [4,5,6] answer = [(fruit, price) for fruit, price in zip(fruits, prices)] print(answer)
假设我们有以下字典,key为水果名称fruits,value为相应的单价price,如下:
d = {"apple":5, "orange":2, "pear":7, "durian":6}
我们需要实现列表生成式用以对上述字典按price对相应的元素进行排序。即样例输出如下:
[("orange",2), ("apple",5), ("durian",6), ("pear",7)]
提示: 推荐使用 sorted函数
【参考答案】
d = {"apple":5, "orange":2, "pear":7, "durian":6}
answer = sorted([(f,p) for f,p in d.items()], key=lambda x:x[-1])
print(answer)
假设我们有以下两个列表:
fruits = ["apple", "orange", "pear"] recipes = ["pie", "juice"]
我们需要实现列表生成式用以对上述两个列表中的元素求解组合操作。即样例输出如下:
[
("apple", "pie"), ("apple", "juice"),
("orange", "pie"), ("orange", "juice"),
("pear", "pie"), ("pear", "juice")
]
提示: 使用两层嵌套循环
【参考答案】
fruits = ["apple", "orange", "pear"] recipes = ["pie", "juice"] answer = [(f,r) for f in fruits for r in recipes] print(answer)
假设我们有以下整数列表:
lis = [1,6,2,4,7]
我们希望用列表生成式来实现在此列表中查找任意两个元素的唯一组合,其总和为3的倍数。即上述样例预期输出为:
[(1,2), (2,4), (2,7)]
【参考答案】
lis = [1,6,2,4,7] answer = [(i,j) for i in lis for j in lis if i<j and (i+j)%3==0] print(answer)
本文重点介绍了九个Python列表生成式的面试题,并给出了相应的代码实现,可以加深大家对列表生成式的理解。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天给大家带来的是关于Python的相关知识,文章围绕着如何使用Python脚本实现自动登录校园网展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
在处理数据的时候,很多时候会遇到替换的情况,下面这篇文章主要给大家介绍了关于Python pandas替换指定数据的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
这篇文章主要介绍了Python中模块(Module)和包(Package)的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了Python实现读取HTML表格 pd.read_html(),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
这篇文章主要介绍了Python数据分析之 Matplotlib 折线图绘制,在数据分析中,数据可视化也非常重要,下文通过数据分析展开对折线图的绘制,需要的小伙伴可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008