介绍
这篇文章给大家分享的是有关面试Python工程师必背的编码题有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
<强>第1题强>:列表(1、2、3、4、5),请使用地图()函数输出(1、4、9、16、25),并使用列表推导式提取出大于10的数,最终输出(16,25)。
地图是Python高阶用法,字面意义是映射,它的作用就是把一个数据结构映射成另外一种数据结构。
地图用法比较绕,最好是对基础数据结构很熟悉了再使用,比如列表,字典,序列化这些。
地图的基本语法如下:
地图(函数,,序列1,序列2,…)
Python 2。x返回列表。
Python 3。x返回迭代器。
list =, (1、2、3、4、5) def fn (x): ,,,return x * *, 2 res =,地图(fn、列表) 时间=res [小姐:for 小姐:拷贝res] 打印(res) 时间=res [小姐:for 小姐:拷贝res if 小姐:祝辞,10] 打印(res)
<强>第2题强>:设计一个函数返回给定文件名的后缀?
考察字符串操作
rfind() #右侧字符出现的位置
注意下面的0 & lt; pos<2用法
如果……其他用法
def get_suffix(文件名,,has_dot=false): ,,,,,, ,,,获取文件名的后缀名 ,,,:param 文件名:,文件名 ,,,:param has_dot:,返回的后缀名是否需要带点 ,,,::返回,文件的后缀名 ,,,,,, ,,,pos =, filename.rfind(& # 39; # 39;公司) ,,,if 0, & lt;, pos & lt;, len(文件名),安康;1: ,,,,,,,index =, pos if has_dot else pos + 1 ,,,,,,,return 文件名(指数:) ,,,: ,,,,,,,return & # 39; & # 39;
<强>第3题强>:这两个参数是什么意思:args, * kwargs ?我们为什么要使用它们?
如果我们不确定要往函数中传入多少个参数,或者我们想往函数中以列表和元组的形式传参数时,那就使要用* args;
如果我们不知道要往函数中传入多少个关键词参数,或者想传入字典的值作为关键词参数时,那就要使用* * kwargs。
参数和kwargs这两个标识符是约定俗成的用法,你当然还可以用汤姆和*雅里,但是这样显的不专业。
下面是具体的示例:案例来源互联网搜索,都书写一遍即可掌握
def f (* args, * * kwargs):, ,,,print (args, kwargs) l =, (1、2、3) t =, (4、5、6) d =,{& # 39;一个# 39;:7日& # 39;b # 39;: 8日& # 39;c # 39;: 9} f () f (1、2、3),,,,,,,,,,,,,,,,,,,, #, (1,, 2,, 3), {} f (1、2、3,“groovy"),,,,,,,,,,, #, (1,, 2,, 3,, & # 39; groovy # 39;), {} f (a=1, b=2, c=3),,,,,,,,,,,,,, #,(),{& # 39;一个# 39;,,1,,& # 39;c # 39;:, 3, & # 39; b # 39;:, 2} f (a=1, b=2, c=3,打鼾声=癶i"),,,,, #,(),{& # 39;一个# 39;,,1,,& # 39;c # 39;:, 3, & # 39; b,,, 2,, & # 39;打鼾声# 39;:,& # 39;你好# 39;} f (1、2、3, a=1, b=2, c=3),,,,,,,, #,(1,, 2,, 3),{& # 39;一个# 39;,,1,,& # 39;c # 39;:, 3, & # 39; b # 39;:, 2} f (* l, * * d),,,,,,,,,,,,,,,,,,, #,(1,, 2,, 3),{& # 39;一个# 39;:,7日,& # 39;c # 39;:, 9日,& # 39;b # 39;:, 8} f (* t * * d),,,,,,,,,,,,,,,,,,, #,(4, 5, 6),{& # 39;一个# 39;:,7日,& # 39;c # 39;:, 9日,& # 39;b # 39;:, 8} f (1、2、* t),,,,,,,,,,,,,,,,,,, #, (1, 2, 4, 5, 6), {} f (q=皐inning", * * d),,,,,,,,,, #,(),{& # 39;一个# 39;:,7日,& # 39;提问# 39;:,& # 39;赢得# 39;,,& # 39;c # 39;:, 9日,& # 39;b # 39;:, 8} f (1、2、* t, q=皐inning", * * d),,, #,(1, 2, 4, 5, 6),{& # 39;一个# 39;:,7日,& # 39;提问# 39;:,& # 39;赢得# 39;,,& # 39;c # 39;:, 9日,& # 39;b # 39;:, 8} def f2 (__arg1、最长,* args, * * kwargs):, ,,,print (__arg1、最长,参数,,kwargs) f2 (1、2、3),,,,,,,,,,,,,,,,,,,,,,, #, 1, 2, (3), {} f2 (1、2、3,“groovy"),,,,,,,,,,,,,, #, 1, 2, (3), & # 39; groovy # 39;), {} f2 (__arg1=1)最长=2,c=3),,,,,,,,,,, #, 1, 2, (), {& # 39; c # 39;:, 3} f2 (__arg1=1)最长=2,c=3,打鼾声=癶i"),, #, 1, 2, (), {& # 39; c # 39;:, 3, & # 39;打鼾声# 39;:,& # 39;你好# 39;} null null null null null null null null null null null null null null null null null null null面试Python工程师必背的编码题有哪些