经典Python面试题之基础80问 Python开发

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经典Python面试题之基础80问 Python开发相关的知识,希望对你有一定的参考价值。

1. 为什么学习Python

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

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

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

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

6. 位和字节的关系?

7. b、BKBMBGB 的关系?

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

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

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

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

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

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

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

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

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

如 10.3.9.12 转换规则为:

        10            00001010

?         3            00000011?

         9            00001001

?        12            00001100?

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

11. python递归的最大层数?

12. 求结果:

    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

13. ascii、unicodeutf-8gbk 区别?

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

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

16. 列举 Python2Python3的区别?

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

     ? a = 1

 ?     b = 2

18. Python3和Python2int long的区别?

19. xrange和range的区别?

20. 文件操作时:xreadlinesreadlines的区别?

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

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

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

24. pass的作用?

25. *arg和**kwarg作用

26. is和==的区别

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

28. Python垃圾回收机制?

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

30. 求结果:

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

   v[‘k1’].append(666)

?   print(v)?

   v[‘k1’] = 777

?   print(v)

31. 求结果:

def num():

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

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

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

33. filter、mapreduce的作用?

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

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

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

37. re的matchsearch区别?

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

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

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

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

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

43. 如何实现[1,2,3]变成[1,2,3] ?

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

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

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

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

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

49. 请用代码简答实现stack

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

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

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

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

54. os和sys模块的作用?

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

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

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

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

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

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

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

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

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

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

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

66. 1、2345 能组成多少个互不相同且无重复的三位数

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

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

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

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

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

72. 什么是面向对象的mro

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

74. 写代码并实现:

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]

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

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

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

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

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

80. 简述 yieldyield from关键字。

老男孩教育Python全栈开发课程,几经沉淀,杜绝纸上谈兵,全企业真实案例结合理论授课,想深入的学习Python开发课程的朋友,可以关注下老男孩教育。



以上是关于经典Python面试题之基础80问 Python开发的主要内容,如果未能解决你的问题,请参考以下文章

经典面试题之——如何自由转换两个没有继承关系的字段及类型相同的实体模型,AutoMapper?

面试题之python基础

面试官常问十大经典算法排序(用Python实现)

python面试题之解释一下python的and-or语法

当面试官问这些基础的Python问题时,竟然还有80%的人不会!

前端面试经典题之ES6新特性