你想要的Python面试都在这里了【315+道题】

写在前面

近日恰逢学生临近毕业,课程后期大家“期待+苦逼”的时刻莫过于每天早上内容回顾和面试题问答部分【临近毕业每天课前用40-60分钟对之前内容回顾、提问和补充,专挑班里不爱说话就的同学回答】。

期待的是可以检验自己学习的成功;苦逼的是怎么又有东西没记住,但我们依然每天坚持一遍、一遍又一遍指导记住为止。

需要完整的面试题可以看一下下图:

第一部分 Python基础篇(80题)

  • 为什么学习Python?
  • 通过什么途径学习的Python?
  • Python和Java、PHP、C、C#、C++等其他语言的对比?
  • 简述解释型和编译型编程语言?
  • Python解释器种类以及特点?
  • 位和字节的关系?
  • b、B、KB、MB、GB 的关系?
  • 请至少列举5个 PEP8 规范(越多越好)。
  • 通过代码实现如下转换:
  • 二进制转换成十进制:v = “0b1111011”
  • 十进制转换成二进制:v = 18
  • 八进制转换成十进制:v = “011”
  • 十进制转换成八进制:v = 30
  • 十六进制转换成十进制:v = “0x12”
  • 十进制转换成十六进制:v = 87
  • 请编写一个函数实现将IP地址转换成一个整数。
  • 如 10.3.9.12 转换规则为:
    10 00001010
    3 00000011
    9 00001001
    12 00001100
    再将以上二进制拼接起来计算十进制结果:00001010 00000011 00001001 00001100 = ?
  • python递归的最大层数?
    求结果:
    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
  • ascii、unicode、utf-8、gbk 区别?
  • 字节码和机器码的区别?
  • 三元运算规则以及应用场景?
  • 列举 Python2和Python3的区别?
  • 用一行代码实现数值交换:
    a = 1
    b = 2
  • Python3和Python2中 int 和 long的区别?
  • xrange和range的区别?
  • 文件操作时:xreadlines和readlines的区别?
  • 列举布尔值为False的常见值?
  • 字符串、列表、元组、字典每个常用的5个方法?
  • lambda表达式格式以及应用场景?
  • pass的作用?
  • arg和**kwarg作用
  • is和==的区别
  • 简述Python的深浅拷贝以及应用场景?
  • Python垃圾回收机制?
  • Python的可变类型和不可变类型?
  • 求结果:
    v = dict.fromkeys(['k1','k2'],[])
    v[‘k1’].append(666)
    print(v)
    v[‘k1’] = 777
    print(v)
    求结果:
    def num():
    return [lambda x: i * x for i in range(4)]
    print([m(2) for m in num()])
  • 列举常见的内置函数?
  • filter、map、reduce的作用?
  • 一行代码实现9*9乘法表
  • 如何安装第三方模块?以及用过哪些第三方模块?
  • 至少列举8个常用模块都有那些?
  • re的match和search区别?
  • 什么是正则的贪婪匹配?
  • 求结果: a. [ i % 2 for i in range(10) ] b. ( i % 2 for i in range(10) )
  • 求结果: a. 1 or 2 b. 1 and 2 c. 1 < (2==2) d. 1 < 2 == 2
  • def func(a,b=[]) 这种写法有什么坑?
  • 如何实现 “1,2,3” 变成 [‘1’,’2’,’3’] ?
  • 如何实现[‘1’,’2’,’3’]变成[1,2,3] ?
  • 比较: a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 b = [(1,),(2,),(3,) ] 的区别?
  • 如何用一行代码生成[1,4,9,16,25,36,49,64,81,100] ?
  • 一行代码实现删除列表中重复的值 ?
  • 如何在函数中设置一个全局变量 ?
  • logging模块的作用?以及应用场景?
  • 请用代码简答实现stack 。
  • 常用字符串格式化哪几种?
  • 简述 生成器、迭代器、可迭代对象 以及应用场景?
  • 用Python实现一个二分查找的函数。
  • 谈谈你对闭包的理解?
  • os和sys模块的作用?
  • 如何生成一个随机数?
  • 如何使用python删除一个文件?
  • 谈谈你对面向对象的理解?
  • Python面向对象中的继承有什么特点?
  • 面向对象深度优先和广度优先是什么?
  • 面向对象中super的作用?
  • 是否使用过functools中的函数?其作用是什么?
  • 列举面向对象中带爽下划线的特殊方法,如:newinit
  • 如何判断是函数还是方法?
  • 静态方法和类方法区别?
  • 列举面向对象中的特殊成员以及应用场景
  • 1、2、3、4、5 能组成多少个互不相同且无重复的三位数
  • 什么是反射?以及应用场景?
  • metaclass作用?以及应用场景?
  • 用尽量多的方法实现单例模式。
  • 装饰器的写法以及应用场景。
  • 异常处理写法以及如何主动跑出异常(应用场景)
  • 什么是面向对象的mro
  • isinstance作用以及应用场景?
  • 写代码并实现:
    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]
  • json序列化时,可以处理的数据类型有哪些?如何定制支持datetime类型?
  • json序列化时,默认遇到中文会转换成unicode,如果想要保留中文怎么办?
  • 什么是断言?应用场景?
  • 有用过with statement吗?它的好处是什么?
  • 使用代码实现查看列举目录下的所有文件。
  • 简述 yield和yield from关键字。

剩下的可以加群来找

posted @ 2018-06-12 12:59  CoXie带你学编程  阅读(404)  评论(0编辑  收藏  举报