面试Python工程师必背的编码题有哪些

  介绍

这篇文章给大家分享的是有关面试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工程师必背的编码题有哪些