Python 面试题系列 200 道:2019 版

作者/分享人:陈祥安
向 Ta 提问
陈祥安,高级爬虫工程师,有着丰富的爬虫工作经验,从 C# 语言转入到Python 语言,擅长各种爬虫技术,熟悉大规模爬虫开发,热爱并喜欢钻研 Python。最近沉迷于异步编程中。公众号:Python学习开发

引言

最近在刷面试题,所以需要看大量的 Python 相关的面试题,从大量的题目中总结了很多的知识,同时也对一些题目进行拓展了,但是在看了网上的大部分面试题不是很满意,一个是有些部分还是 Python2 的代码,另一个就是回答的很简单,有些关键的题目,也没有点出为什么,最重要的是还有一些复制粘贴根本就跑不通,这种相信大家深有体会吧,这样就导致我们可能需要去找其他人发的类似的教程。难受啊,所以我决定针对市面上大多的 Python 题目做一个分析,同时也希望大家尽可能的做到举一反三,而不是局限于题目本身。大概就这样吧,有你看过的题目也有你没看到过的。

通过本场 Chat,你将获得如下知识点:

  • 掌握 Python 的基础语法
  • 语法常见的 Python 应用场景
  • 掌握Python闭包的使用以及装饰器的使用
  • 生成器和迭代器的使用
  • 常见的设计模式的使用
  • 深浅拷贝的区别
  • 线程、进程、协程的使用
  • 了解 Python 中的元编程和反射

部分题目

1.解释一下python中pass语句的作用?
2.简述你对input()函数的理解
3.已知AList = [1,2,3,1,2],对AList列表元素去重,写出具体过程。
4.Python交换两个变量的值
5.在读文件操作的时候会使用read、readline或者readlines,简述它们各自的左右
6.python中的is和==
7.Python中的作用域
8.函数装饰器有什么作用?请列举说明?
9.谈谈对Python和其他语言的区别
10.简述解释型和编译型编程语言
11.如何反转字符串"hello world"?
12.Python的解释器种类以及相关特点?
13.三元运算写法和应用场景?
14.Python3和Python2的区别?
15.Python3和Python2中int和long区别?
16.xrange和range的区别?
17.了解enumerate么?
18.Python垃圾回收机制?
19.列举5个Python中的标准模块
20.如何实现 "1,2,3" 变成 ["1","2","3"]
21.如何在函数中设置一个全局变量
22.Python中的字符串格式化方式你知道哪些?
23.用Python实现一个二分查找的函数
24.魔法函数 __call__怎么使用?
25.如何判断一个对象是函数还是方法?
26.pathlib的用法举例
27.@classmethod和@staticmethod用法和区别
28.Python 中的接口如何实现?
29.Python中的反射了解么?
30.metaclass作用?以及应用场景?
31.Python中的异常处理,写一个简单的应用场景
32.Python中递归的最大次数,那如何突破呢?
33.什么是面向对象的mro
34.isinstance作用以及应用场景?
35.json序列化时,可以处理的数据类型有哪些?如何定制支持datetime类型?
36.json序列化时,默认遇到中文会转换成unicode,如果想要保留中文怎么办?
37.什么是断言?应用场景?
38.lambda表达式格式以及应用场景?
39.python单例模式的实现方法
40.使用Python实现一个斐波那契数列
41.新式类和旧式类的区别
42.hasattr() getattr() setattr()的用法
43.dir()是干什么用的?
44.给定两个list,A和B,找出相同元素和不同元素
45.有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。
46.有一个字符串开头和末尾都有空格,比如“ adabdw ”,要求写一个函数把这个字符串的前后空格都去掉。
47.如果当前的日期为20190530,要求写一个函数输出N天后的日期,(比如N为2,则输出20190601)。
48.下面这段代码输出什么?

num = 9

def f1():
    num = 20

def f2():
    print num

f2()
f1()
f2()

49.写一个函数,接收整数参数n,返回一个函数,函数的功能是把函数的参数和n相乘并把结果返回。
50.一个包里有三个模块,demo1.py, demo2.py, demo3.py,但使用from tools import *导入模块时,如何保证只有demo1、demo3被导入了。
51.下面代码会存在什么问题,如何改进?

def strappend(num):
    str='first'
    for i in range(num):
        str+=str(i)
    return str

52.Python常用的数据结构的类型及其特性?

A:{1:0,2:0,3:0}
B:{"a":0, "b":0, "c":0}
C: {(1,2):0, (2,3):0}
D: {[1,2]:0, [2,3]:0}

53.已知:

AList = [1,2,3]
BSet = {1,2,3}

(1) 从AList 和 BSet中 查找 4,最坏时间复杂度那个大?
(2) 从AList 和 BSet中 插入 4,最坏时间复杂度那个大?
54.获取字符串”123456“最后的两个字符。
55.请列举你知道的Python的魔法方法及用途。
56.列举5个Python中的异常类型以及其含义
57.copy和deepcopy的区别是什么?
58.如何将元组("A","B")和元组(1,2),合并成字典{"A":1,"B":2}
59.代码中经常遇到的*args, **kwargs含义及用法。
60.一行代码输出1-100之间的所有偶数。
61.Python里面如何实现tuple和list的转换?
62.如何知道一个Python对象的类型?
63.Python的传参是传值还是传址?
64.with语句的作用,写一段代码?
65.一个编码为 GBK 的字符串 S,要将其转成UTF-8编码的字符串,应如何操作?
66.在requests模块中,requests.content和requests.text什么区别
67.Python中会有函数或成员变量包含单下划线前缀和结尾,和双下划线前缀结尾,区别是什么?
68.单引号、双引号、三引号的区别?
69.Python中的元类(metaclass)使用举例
70.我们知道对于列表可以使用切片操作进行部分元素的选择,那么如何对生成器类型的对象实现相同的功能呢?
71.使用正则表达式匹配出<html><h1>www.baidu.com</html>中的地址
72.w、a+、wb文件写入模式的区别
73.python字典和json字符串相互转化方法
74.s="info:xiaoZhang 33 shandong",用正则切分字符串输出['info', 'xiaoZhang', '33', 'shandong']
74.举例sort和sorted的区别
75.a = "你好 中国 ",去除多余空格只留一个空格。
76.请将[i for i in range(3)]改成生成器
77.简述any()和all()方法
78.字典操作中del和pop有什么区别
79.list=[2,3,5,4,9,6],从小到大排序,不许用sort,输出[2,3,4,5,6,9]
80.a="hello"和b="你好"编码成bytes类型
81.a="张明 98分",用re.sub,将98替换为100
82.[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
83.正则表达式匹配中(.*)和(.*?)匹配区别?
84.合并列表[1,5,7,9]和[2,2,6,8]
85.filter方法求出列表所有奇数并构造新列表,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
86.什么是猴子补丁?
87.请写一个 Python 逻辑,计算一个文件中的大写字母数量
88.什么是负索引?
89.如何打乱一个列表的元素?
90.怎样将字符串转换为小写?
91.pprint模块是干什么的?
92.简要写一下lxml模块的使用方法框架
93.解释一下 Python 中的赋值运算符
94.解释一下 Python 中的逻辑运算符
95.讲讲 Python 中的位运算符
96.在 Python 中如何使用多进制数字?
97.怎样声明多个变量并赋值?
98.举例说明conccurent.future的中线程池的用法
99.在Python中是如何管理内存的?
100.当退出 Python 时是否释放所有内存分配?

扫码关注获取审核结果通知
审核中...
已有5人预订
预订达标
文章出炉
     
06月10日
06月17日
退款保证:
• 06月10日前,预订人数未达标,您将获得全额退款。
• 作者未按时完成文章,您将获得全额退款。
你可能还喜欢
Docker 快速入门
技术人的突破
如何利用碎片时间,提升自己的职场竞争优势
代码GG陆晓明
Docker 镜像构建原理及源码分析
张晋涛
如何写好 React 业务代码?
尹光耀
5G,一场商业噱头 or 一次技术革命?
Edvin
一文掌握 MySQL 索引,秒杀面试官
高爽
大数据常见的 150 道面试题全面解析:2019 版
攻城狮
数据库战争:MySQL VS MongoDB
钱工
DDD 的最短学习路径
文贺
今日头条、腾讯后端开发面经分享(附详细问题答案)
天澄
一篇文章讲明白 Elasticsearch 原理以及相关知识点
kerry
微服务开发的经验与教训
ningerbao
基于 RabbitMQ 的消息平台入门与实战
知了
无需服务器构建属于自己的博客站
Way
Spring Cloud Hystrix 原理解析
林某人
微信扫描登录
关注提示×
扫码关注公众号,获得 Chat 最新进展通知!
添加小助手微信×