Python面试题长啥样?[面试题整理]
感谢知乎这个神圣的地方,我遇到了我的女朋友@Root 。所以让大家见证我们的感情吧。
从去年开始接触Python到如今大概是一年半左右,这一年半我已经深深的陷在Python的世界里无法自拔。她是一门神奇的语言,她很神奇,她很火,她很受欢迎。早些时候,我就观察了一下知乎社区的各种语言的关注度。可以发现的是(看图说话):
既然这么火,那我们就有理由好好学习她了。渐渐的会发现你会跌入深渊的。有可能你只是随手点进了这篇文章,有可能只是这随手一点就打开了一扇新世界的大门。所以这里,如果你没有Python的基础没有关系,你可以看以下几篇文章或者回答。希望可以帮助到你入门Python。
编程零基础应当如何开始学习 Python ? - 路人甲的回答网易云课堂上有哪些值得推荐的 Python 教程? - 路人甲的回答怎么用短时间高效而踏实地学习 Python? - 路人甲的回答
如何学习Python爬虫[入门篇] - 学习编程 - 知乎专栏Python常用库整理 - 学习编程 - 知乎专栏学好Python的11个资源 - 学习编程 - 知乎专栏
以上几篇都可以帮助在学习或者将要学习Python的你。如果你有Python基础或者已经学过一段时间的Python了,那就恭喜你继续往下面看鄙视和面试题目吧。当然如果您已经在从事Python方面的工作了,或者对Python比较精通也欢迎您补充和纠正下文中的题目。
以下所有题目整理来自网络以及其它(如有侵权必删除,请私信联系),以下所有题目答案在搜索引擎中均可以查到因此不再放上答案,请大家自行搜索。
在开头依然推荐一个Python面试题整理比较好的网站:GitHub : 关于Python的面试题。同样推荐几道题目来自@auxten 的专栏知乎专栏 - 面向工资编程 其中有几篇很不错的Python面试的题目。并附有非常详细的回答。 (请大家进入专栏查找)。
1.How are arguments passed – by reference of by value?
2.Do you know what list and dict comprehensions are? Can you give an example?
3.What is PEP 8?
4.Do you use virtual environments?
5.Can you sum all of the elements in the list, how about to multuply them and get the result?
6.Do you know what is the difference between lists and tuples? Can you give me an example for their usage?
7.Do you know the difference between range and xrange?
8.Tell me a few differences between Python 2.x and 3.x
9.What are decorators and what is their usage?
10.The with statement and its usage.
11.说说你对zen of python的理解,你有什么办法看到它
12.github上都fork过哪些python库,列举一下你经常使用的,每个库用一句话描述下其功能
13.你调试python代码的方法有哪些
14.什么是GIL
15.什么是元类(meta_class)
16.对比一下dict中 items 与 iteritems
17.是否遇到过python的模块间循环引用的问题,如何避免它
18.有用过with statement吗?它的好处是什么?
19.说说decorator的用法和它的应用场景,如果可以的话,写一个decorator
20.inspect模块有什么用
21.写一个类,并让它尽可能多的支持操作符
22.说一说你见过比较cool的python实现
23.python下多线程的限制以及多进程中传递参数的方式
24.Python是如何进行内存管理的?
25.什么是lambda函数?它有什么好处?
26.如何用Python输出一个Fibonacci数列?
27.介绍一下Python中webbrowser的用法?
28.解释一下python的and-or语法
29.Python是如何进行类型转换的?
30.Python如何实现单例模式?其他23种设计模式python如何实现?
31.如何用Python来进行查询和替换一个文本字符串?
32.如何用Python来发送邮件?
33.有没有一个工具可以帮助查找python的bug和进行静态的代码分析?
34.有两个序列a,b,大小都为n,序列元素的值任意整形数,无序;
要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差小。
35.如何用Python删除一个文件?
36.Python如何copy一个文件?
37.python程序中文输出问题怎么解决?
38.python代码得到列表list的交集与差集
39.写一个简单的python socket编程
40.python如何捕获异常
41.在Python中, list, tuple, dict, set有什么区别, 主要应用在什么样的场景?
42. 静态函数, 类函数, 成员函数的区别?
43. a=1, b=2, 不用中间变量交换a和b的值
44. 写一个函数, 输入一个字符串, 返回倒序排列的结果: 如: string_reverse(‘abcdef’), 返回: ‘fedcba’
45. 请用自己的算法, 按升序合并如下两个list, 并去除重复的元素:
list1 = [2, 3, 8, 4, 9, 5, 6]
list2 = [5, 6, 10, 17, 11, 2]
46. 说一下以下代码片段存在的问题
from amodule import * # amodule is an exist module
class dummyclass(object):
def __init__(self):
self.is_d = True
pass
class childdummyclass(dummyclass):
def __init__(self, isman):
self.isman = isman
@classmethod
def can_speak(self): return True
@property
def man(self): return self.isman
if __name__ == "__main__":
object = new childdummyclass(True)
print object.can_speak()
print object.man()
print object.is_d
相关文章