Python面试宝典(一)

lnh2017 · 2018-05-25 11:26:22 · 2221 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2018-05-25 11:26:22 的主题,其中的信息可能已经有所发展或是发生改变。

Python基础篇

  1. 为什么学习Python?

  2. 通过什么途径学习的Python?

  3. Python和Java、PHP、C、C#、C++等其他语言的对比?

  4. 简述解释型和编译型编程语言?

  5. Python解释器种类以及特点?

  6. 位和字节的关系?

  7. b、B、KB、MB、GB 的关系?

  8. 请至少列举5个 PEP8 规范(越多越好)。

  9. 通过代码实现如下转换:

二进制转换成十进制:v = “0b1111011”


十进制转换成二进制:v = 18


八进制转换成十进制:v = “011”


十进制转换成八进制:v = 30


十六进制转换成十进制:v = “0x12”


十进制转换成十六进制:v = 87

  1. 请编写一个函数实现将IP地址转换成一个整数。

如 10.3.9.12 转换规则为:

    10            00001010


 3 00000011


     9            00001001


 12 00001100


再将以上二进制拼接起来计算十进制结果:00001010 00000011 00001001 00001100 = ?

  1. python递归的最大层数?

  2. 求结果:

    v1 = 1 or 3


    v2 = 1 and 3


    v3 = 0 and 2 and 1


 v4 = 0 and 2 or 1


 v5 = 0 and 2 or 1 or 4


 v6 = 0 or Flase and 1

  1. ascii、unicode、utf-8、gbk 区别?

  2. 字节码和机器码的区别?

  3. 三元运算规则以及应用场景?

  4. 列举 Python2和Python3的区别?

  5. 用一行代码实现数值交换:


 a = 1


 b = 2

  1. Python3和Python2中 int 和 long的区别?

  2. xrange和range的区别?

  3. 文件操作时:xreadlines和readlines的区别?

  4. 列举布尔值为False的常见值?

  5. 字符串、列表、元组、字典每个常用的5个方法?

  6. lambda表达式格式以及应用场景?

  7. pass的作用?

  8. arg和*kwarg作用

  9. is和==的区别

  10. 简述Python的深浅拷贝以及应用场景?

  11. Python垃圾回收机制?

  12. Python的可变类型和不可变类型?

  13. 求结果:


 v = dict.fromkeys(['k1','k2'],[])


v[‘k1’].append(666)


 print(v)


v[‘k1’] = 777


 print(v)

  1. 求结果:

def num():

return [lambda x:i*x for I in range(4)]

print([m(2) for m in num()])

  1. 列举常见的内置函数?

  2. filter、map、reduce的作用?

  3. 一行代码实现9*9乘法表

  4. 如何安装第三方模块?以及用过哪些第三方模块?

  5. 至少列举8个常用模块都有那些?

  6. re的match和search区别?

  7. 什么是正则的贪婪匹配?

  8. 求结果:
 a. [ i % 2 for i in range(10) ]
 b. ( i % 2 for i in range(10) )

  9. 求结果:
 a. 1 or 2
 b. 1 and 2
 c. 1 < (2==2)
 d. 1 < 2 == 2

  10. def func(a,b=[]) 这种写法有什么坑?

  11. 如何实现 “1,2,3” 变成 [‘1’,’2’,’3’] ?

  12. 如何实现[‘1’,’2’,’3’]变成[1,2,3] ?

  13. 比较: a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 b = [(1,),(2,),(3,) ] 的区别?

  14. 如何用一行代码生成[1,4,9,16,25,36,49,64,81,100] ?

  15. 一行代码实现删除列表中重复的值 ?

  16. 如何在函数中设置一个全局变量?

  17. logging模块的作用?以及应用场景?

  18. 请用代码简答实现stack 。

  19. 常用字符串格式化哪几种?

  20. 简述 生成器、迭代器、可迭代对象 以及应用场景?

  21. 用Python实现一个二分查找的函数。

  22. 谈谈你对闭包的理解?

  23. os和sys模块的作用?

  24. 如何生成一个随机数?

  25. 如何使用python删除一个文件?

  26. 谈谈你对面向对象的理解?

  27. Python面向对象中的继承有什么特点?

  28. 面向对象深度优先和广度优先是什么?

  29. 面向对象中super的作用?

  30. 是否使用过functools中的函数?其作用是什么?

  31. 列举面向对象中带爽下划线的特殊方法,如:newinit

  32. 如何判断是函数还是方法?

  33. 静态方法和类方法区别?

  34. 列举面向对象中的特殊成员以及应用场景

  35. 1、2、3、4、5 能组成多少个互不相同且无重复的三位数

  36. 什么是反射?以及应用场景?

  37. metaclass作用?以及应用场景?

  38. 用尽量多的方法实现单例模式。

  39. 装饰器的写法以及应用场景。

  40. 异常处理写法以及如何主动跑出异常(应用场景)

  41. 什么是面向对象的mro

  42. isinstance作用以及应用场景?

  43. 写代码并实现:

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would

have exactly one solution, and you may not use the same element twice.

Example:


      Given nums = [2, 7, 11, 15], target = 9,


Because nums[0] + nums[1] = 2 + 7 = 9,


       return [0, 1]
  1. json序列化时,可以处理的数据类型有哪些?如何定制支持datetime类型?

  2. json序列化时,默认遇到中文会转换成unicode,如果想要保留中文怎么办?

  3. 什么是断言?应用场景?

  4. 有用过with statement吗?它的好处是什么?

  5. 使用代码实现查看列举目录下的所有文件。

  6. 简述 yield和yield from关键字。


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2221 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传