python面试题精选

python面试题精选

ID:69570510

大小:289.00 KB

页数:44页

时间:2021-11-07

python面试题精选_第1页
python面试题精选_第2页
python面试题精选_第3页
python面试题精选_第4页
python面试题精选_第5页
python面试题精选_第6页
python面试题精选_第7页
python面试题精选_第8页
python面试题精选_第9页
python面试题精选_第10页
资源描述:

《python面试题精选》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、------------------------------------------作者xxxx------------------------------------------日期xxxxpython面试题精选【精品文档】问题1到底什么是Python?你可以在回答中与其他技术进行对比(也鼓励这样做)。答案下面是一些关键点:·Python是一种解释型语言,Python代码在运行之前不需要编译。·Python是动态类型语言,在声明变量时,不需要说明变量的类型。·Python非常适合面向对象的编程(OOP),因为它支持通过组合(compositi

2、on)与继承(inheritance)的方式定义类(class)。Python中没有访问说明符public和private,·在Python语言中,函数是第一类对象(first-classobjects)。这指的是它们可以被指定给变量,函数既能返回函数类型,也可以接受函数作为输入。类(class)也是第一类对象。·Python代码编写快,但是运行速度比编译语言通常要慢。ython允许加入基于C语言编写的扩展,因此我们能够优化代码,消除瓶颈,这点通常是可以实现的。numpy就是一个很好地例子,它的运行速度真的非常快,因为很多算术运算其实并不是通过

3、Python实现的。·Python用途非常广泛——网络应用,自动化,科学建模,大数据应用,等等。它也常被用作“胶水语言”,帮助其他语言和组件改善运行状况。·Python让困难的事情变得容易,因此程序员可以专注于算法和数据结构的设计,而不用处理底层的细节。问题2补充缺失的代码defprint_directory_contents(sPath):"""这个函数接受文件夹的名称作为输入参数,返回该文件夹中文件的路径,以及其包含文件夹中文件的路径。"""#补充代码答案defprint_directory_contents(sPath):importos

4、forsChildinos.listdir(sPath):【精品文档】【精品文档】sChildPath=os.path.join(sPath,sChild)ifos.path.isdir(sChildPath):print_directory_contents(sChildPath)else:printsChildPath特别要注意以下几点:·命名规范要统一。如果样本代码中能够看出命名规范,遵循其已有的规范。·递归函数需要递归并终止。确保你明白其中的原理,否则你将面临无休无止的调用栈(callstack)。·我们使用os模块与操作系统进行交互,

5、同时做到交互方式是可以跨平台的。你可以把代码写成sChildPath=sPath+'/'+sChild,但是这个在Windows系统上会出错。·熟悉基础模块是非常有价值的,但是别想破脑袋都背下来,记住Google是你工作中的良师益友。·如果你不明白代码的预期功能,就大胆提问。·坚持KISS原则!保持简单,不过脑子就能懂!为什么提这个问题:·说明面试者对与操作系统交互的基础知识·递归真是太好用啦问题3阅读下面的代码,写出A0,A1至An的最终值。A0=dict(zip(('a','b','c','d','e'),(1,2,3,4,5)))A1=r

6、ange(10)A2=[iforiinA1ifiinA0]A3=[A0[s]forsinA0]A4=[iforiinA1ifiinA3]A5={i:i*iforiinA1}A6=[[i,i*i]foriinA1]答案A0={'a':1,'c':3,'b':2,'e':5,'d':4}A1=[0,1,2,3,4,5,6,7,8,9]A2=[]A3=[1,3,2,5,4]A4=[1,2,3,4,5]【精品文档】【精品文档】A5={0:0,1:1,2:4,3:9,4:16,5:25,6:36,7:49,8:64,9:81}A6=[[0,0],[1,1

7、],[2,4],[3,9],[4,16],[5,25],[6,36],[7,49],[8,64],[9,81]]问题4Python和多线程(multi-threading)。这是个好主意码?列举一些让Python代码以并行方式运行的方法。答案Python并不支持真正意义上的多线程。Python中提供了多线程包,但是如果你想通过多线程提高代码的速度,使用多线程包并不是个好主意。Python中有一个被称为GlobalInterpreterLock(GIL)的东西,它会确保任何时候你的多个线程中,只有一个被执行。线程的执行速度非常之快,会让你误以为线

8、程是并行执行的,但是实际上都是轮流执行。经过GIL这一道关卡处理,会增加执行的开销。这意味着,如果你想提高代码的运行速度,使用threading包并不

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。