找工作是每个学习Python人员的目标,为了更好的找到工作,刷面试题是必不可少的,了解最新企业招聘试题,可以让你面试更加的顺利。小编整理了一些2017年最新的Python面试题,来测测你技术的掌握度吧。

1、Python里面如何拷贝一个对象?(赋值,浅拷贝,深拷贝的区别)

答:赋值(=),就是创建了对象的一个新的引用,修改其中任意一个变量都会影响到另一个。

浅拷贝:创建一个新的对象,但它包含的是对原始对象中包含项的引用(如果用引用的方式修改其中一个对象,另外一个也会修改改变){1,完全切片方法;2,工厂函数,如list();3,copy模块的copy()函数}

深拷贝:创建一个新的对象,并且递归的复制它所包含的对象(修改其中一个,另外一个不会改变){copy模块的deep.deepcopy()函数}

2、Python里面match()和search()的区别?

答:re模块中match(pattern,string[,flags]),检查string的开头是否与pattern匹配。

re模块中research(pattern,string[,flags]),在string搜索pattern的第一个匹配值。

>>>print(re.match("super’, "superstition’).span())

(0, 5)

>>>print(re.match("super’, "insuperable’))

None

>>>print(re.search("super’, "superstition’).span())

(0, 5)

>>>print(re.search("super’, "insuperable’).span())

(2, 7)

3、有没有一个工具可以帮助查找python的bug和进行静态的代码分析?

答:PyChecker是一个python代码的静态分析工具,它可以帮助查找python代码的bug, 会对代码的复杂度和格式提出警告

Pylint是另外一个工具可以进行codingstandard检查

4、简要描述Python的垃圾回收机制(garbage collection)。

答案

这里能说的很多。你应该提到下面几个主要的点:

Python在内存中存储了每个对象的引用计数(reference count)。如果计数值变成0,那么相应的对象就会小时,分配给该对象的内存就会释放出来用作他用。

偶尔也会出现引用循环(reference cycle)。垃圾回收器会定时寻找这个循环,并将其回收。举个例子,假设有两个对象o1和o2,而且符合o1.x == o2和o2.x == o1这两个条件。如果o1和o2没有其他代码引用,那么它们就不应该继续存在。但它们的引用计数都是1。

Python中使用了某些启发式算法(heuristics)来加速垃圾回收。例如,越晚创建的对象更有可能被回收。对象被创建之后,垃圾回收器会分配它们所属的代(generation)。每个对象都会被分配一个代,而被分配更年轻代的对象是优先被处理的。

5、什么是lambda函数?它有什么好处?

答:lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数

lambda函数:首要用途是指点短小的回调函数

lambda [arguments]:expression

>>> a=lambdax,y:x+y

>>> a(3,11)

6、请写出一段Python代码实现删除一个list里面的重复元素

答:

1,使用set函数,set(list)

2,使用字典函数,

>>>a=[1,2,4,2,4,5,6,5,7,8,9,0]

>>> b={}

>>>b=b.fromkeys(a)

>>>c=list(b.keys())

>>> c

7、用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?

答:术语叫贪婪匹配( <.*> )和非贪婪匹配(<.*?> )

例如:

test

<.*> :

test

<.*?> :

8、如何在一个function里面设置一个全局的变量?

答:解决方法是在function的开始插入一个global声明:

def f()

global x

9、编程用sort进行排序,然后从最后一个元素开始判断

a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3]

a.sort()

last=a[-1]

for i inrange(len(a)-2,-1,-1):

if last==a[i]:

del a[i]

else:last=a[i]

print(a)

10、下面的代码在Python2中的输出是什么?解释你的答案

def div1(x,y):

print "%s/%s = %s" % (x, y, x/y)

def div2(x,y):

print "%s//%s = %s" % (x, y, x//y)

div1(5,2)

div1(5.,2)

div2(5,2)

div2(5.,2.)

另外,在Python3中上面的代码的输出有何不同(假设代码中的print语句都转化成了Python3中的语法结构)?

在Python2中,代码的输出是:

5/2 = 2

5.0/2 = 2.5

5//2 = 2

5.0//2.0 = 2.0

默认情况下,如果两个操作数都是整数,Python2默认执行整数运算。所以,5/2 结果是2,而5./2结果是2.5

注意你可以通过下面的import语句来覆盖Python2中的这一行为

from __future__ import division

还要注意"双斜杠”(//)操作符将会一直执行整除,忽略操作数的类型。这就是为什么5.0//2.0即使在Python2中结果也是2.0

但是在Python3并没有这一行为。两个操作数都是整数时,也不执行整数运算。在Python3中,输出如下:

5/2 = 2.5

5.0/2 = 2.5

5//2 = 2

5.0//2.0 = 2.0

2018年python工作好找吗-2018年 Python面试必看的10个问题及答案相关推荐

  1. 2018python好找工作吗-2018年 Python面试必看的10个问题及答案

    找工作是每个学习Python人员的目标,为了更好的找到工作,刷面试题是必不可少的,了解最新企业招聘试题,可以让你面试更加的顺利.小编整理了一些2017年最新的Python面试题,来测测你技术的掌握度吧 ...

  2. 2018年python工作好找吗-2018年Python发展前景如何?Python就业有哪些方向?

    原标题:2018年Python发展前景如何?Python就业有哪些方向? python值不值得学?2018年Python发展前景如何?Python就业有哪些方向? 最近一两年做开发的被一门编程语言,也 ...

  3. 2018年python工作好找吗-2018年最火的5大Python开源项目,总有适合你的!

    前几天看到一条新闻,说是高中生课程里面开设python课程了,这小孩子都来抢占市场了,这就是打了很多人的脸,特别是已经毕业很多年或者正在学校的人,小孩子都作为标准的教材来学习了,作为过来人还有什么理由 ...

  4. 从Python爬虫小白进阶数据分析大神,必看的10本书

    导读:吾日三省吾身,过年胖了吗?情人节过了吗?发际线还好吗?别想这么多啦,程序员和数据科学家的世界里,只有Python值得你费脑子!今天为大家准备了10本数据分析相关好书,助你早日成为Python大神 ...

  5. python考试题库开发_算法/开发 面试必看! 【python基础】面试题合集

    本合集整理了计算机专业相关算法/开发面试中遇到的[python基础]相关面试题,后续会持续更新,有需要的小伙伴可以点赞or收藏随时查阅哦!♥ Q:python不可变对象?可变对象?可变对象:list ...

  6. 2018年python工作好找吗-2018年最新数据:python、大数据、人工智能从业者薪资表...

    问一个很现实的问题,以你目前的薪资,多久能赚到100万? 在一线城市,年薪10万仅能饱腹,就算熬夜加班苦干10年达到100万,相信也所剩无几. 所以要想多赚钱,就要转变思路.勤奋努力,年薪30万并不是 ...

  7. 2018年python工作好找吗-2018年排名前20的数据科学Python库

    Python 在解决数据科学任务和挑战方面继续处于领先地位.业已证明最有帮助的Python库,我们选择 20 多个库,因为其中一些库是相互替代的,可以解决相同的问题.因此,我们将它们放在同一个分组. ...

  8. 2018年python工作好找吗-2018年IT行业薪资大揭秘:你拖后腿了吗?

    原标题:2018年IT行业薪资大揭秘:你拖后腿了吗? 现在就业形势较好和较差的行业分别是哪些?哪些地区用人需求大?又有哪些地方就业竞争激烈?这份报告快来了解一下! 从报告可以看出,分行业来看,就业景气 ...

  9. 2018年python工作好找吗-2018年涨工资了吗?Python 工程师薪资最新出炉

    著名的TIOBE 刚刚发布了6 月编程语言排行榜.TIOBE编程社区索引是编程言语评价的一个指标,该指数每月更新一次.小伙伴们赶忙看看下面的排名情况吧! 图1 TIOBE排行榜是根据互联网上有经验的程 ...

最新文章

  1. 一文看懂BCH减半时间计算及减半影响
  2. 搭建SSH框架之一(资料准备)
  3. 20162328蔡文琛week07
  4. 到底多大才算高并发?
  5. python如何让图片镜像翻转_98后常春藤学霸林之秋,一作拿下CVPR最佳论文提名,首次挑战图片翻转不变性假设...
  6. 【Java IO知识】读取中文乱码问题解决
  7. 深入单例模式 java,深入单例模式四
  8. Frida Android hook
  9. python迷宫起点终点所有路径_通向终点的路不止一条!python迷宫。
  10. C语言实践作业报告,c语言社会实践报告
  11. 放大器非线性失真研究装置设计报告_活动 | 机电学子在2020年TI杯全国大学生电子设计竞赛中再创佳绩...
  12. 软件测试er如何写简历?让砖厂无法拒绝你
  13. [翻译]Monocular Visual Odometry using OpenCV
  14. python的pandas库中read_table的参数
  15. vscode编写php好用吗,vscode可以编写php吗
  16. C语言入门之C语言开发环境搭建
  17. python绘制对数函数
  18. 系分架构 - 软件架构设计
  19. asp.net中@Register指令
  20. Java 爬虫微信公众号详情,并且破解微信图片跨域问题

热门文章

  1. 理解 JavaScript 中的 for…of 循环
  2. JQuery封装的ajax方法
  3. jQuery文档处理
  4. 如何查看Windows7系统版本
  5. 第五天--表单与页面
  6. Bailian2973 Skew数【进制】
  7. JSK-58 合法回文【字符串】
  8. HDU2048 神、上帝以及老天爷【递推】
  9. Bailian3708 1的个数【进制】
  10. HDU2009 求数列的和【入门】