- python-面试通关宝典
- 一.语言特性
- 二.编码规范
- 三.数据类型
- 字符串
- 19.列举 Python 中的基本数据类型。
- 20.如何区别 可变数据类型 和 不可变数据类型?
- 21.将 "hello world" 转换为首字母大写 "Hello World"。
- 22.如何检测字符串中只含有数字?
- 23.将字符串 "ilovechina" 进行反转。
- 24.Python 中的字符串格式化方式你知道哪些?
- 25.有一个字符串开头和末尾都有空格,比如 " adabdw "。要求写一个函数把这个字符串的前后空格都去掉。
- 26.获取字符串 "123456" 最后的两个字符。
- 27.一个编码为 GBK 的字符串 S,要将其转成 UTF-8 编码的字符串,应如何操作?
- 28.字符串 s = "info:xiaoZhang 33 shandong",用正则切分字符串输出 ['info', 'xiaoZhang', '33', 'shandong']。
- 29.怎样将字符串转换为小写?
- 30.单引号、双引号和三引号的区别?
- 31.字符串 a = "你好 中国 ",去除多余空格只留一个空格。
- 列表
- 字典
- 综合数据类型
- 操作类题目
- 51.在 Python 中交换两个变量的值。
- 52.在读文件操作的时候会使用 read、readline 或者 readlines,简述它们各自的作用。
- 53.json 序列化时,可以处理的数据类型有哪些?如何定制支持 datetime 类型?
- 54.json 序列化时,默认遇到中文会转换成 unicode,如果想要保留中文怎么办?
- 55.有两个磁盘文件 A 和 B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件 C 中。
- 56.如果当前的日期为 20190530,要求写一个函数输出 N 天后的日期(比如 N 为 2,则输出 20190601)。
- 57.写一个函数,接收整数参数 n,返回一个函数。函数的功能是把函数的参数和 n 相乘并把结果返回。
- 58.下面的代码会存在什么问题,如何改进?
- 59.一行代码输出 1-100 之间的所有偶数。
- 60.with 语句的作用,并用它写一段代码。
- 61.Python 字典和 json 字符串相互转化方法。
- 62.请写一个 Python 逻辑,计算一个文件中的大写字母数量。
- 高级特性
- 63.函数装饰器有什么作用?请列举说明。
- 64.简述 Python 垃圾回收机制。
- 65.魔法函数 __call__怎么使用?
- 66.如何判断一个对象是函数还是方法?
- 67.简述 @classmethod 和 @staticmethod 用法和区别。
- 68.Python 中的接口如何实现?
- 69.你了解 Python 中的反射吗?
- 70.简述 metaclass 的作用和其应用场景。
- 71.对比 hasattr(),getattr() 和 setattr() 的用法。
- 72.请列举你知道的 Python 的魔法方法及用途。
- 73.如何知道一个 Python 对象的类型?
- 74.Python 中的 元类(metaclass) 使用举例。
- 75.简述 any() 和 all() 方法。
- 76.用 filter 方法求出列表 a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 中的所有奇数,并构造新列表。
- 77.什么是猴子补丁?
- 78.在 Python 中是如何管理内存的?
- 79.当退出 Python 时是否释放所有内存分配?
- 正则表达式
- 其他内容
- 83.解释一下 Python 中 pass 语句的作用。
- 84.简述你对 input() 函数的理解。
- 85.Python 中的 is 和 == 有什么区别?
- 86.Python 中的作用域有哪些?
- 87.三元运算写法和应用场景。
- 88.了解 enumerate 吗?
- 89.列举 5 个 Python 中的标准模块。
- 90.如何在函数中设置一个全局变量?
- 91.pathlib 的用法举例。
- 92.请对 Python 中的异常处理写一个简单的应用场景。
- 93.Python 中递归的最大次数是多少?如何突破?
- 94.什么是面向对象的 MRO?
- 95.简述 isinstance 的作用以及应用场景。
- 96.什么是断言?并描述一个应用场景。
- 97.lambda 表达式格式以及应用场景。
- 98.新式类和旧式类的区别有哪些?
- 99.dir() 是用来干什么的?
- 100.一个包里有三个模块,demo1.py、demo2.py 和 demo3.py,但使用 from tools import * 导入模块时,如何保证只有 demo1、demo3 被导入?
- 101.列举 5 个 Python 中的异常类型以及其含义。
- 102.copy 和 deepcopy 的区别是什么?
- 103.请阐述代码中经常遇到的 *args, **kwargs 的含义及用法。
- 104.Python 中会有函数或成员变量包含单下划线前缀和结尾,或双下划线前缀结尾,它们的区别是什么?
- 105.简述 w、a 和 wb 文件写入模式的区别。
- 106.举例 sort 和 sorted 的区别。
- 107.什么是负索引?
- 108.pprint 模块是干什么的?
- 109.解释一下 Python 中的赋值运算符。
- 110.解释一下 Python 中的逻辑运算符。
- 111.讲讲 Python 中的位运算符。
- 112.在 Python 中如何使用多进制数字?
- 113.怎样声明多个变量并赋值?
- 算法和数据结构
- 爬虫相关
- 130.在 requests 模块中,requests.content 和 requests.text 什么区别?
- 131.简要写一下 lxml 模块的使用方法框架。
- 132.说一说 scrapy 的工作流程。
- 133.简述 scrapy 的去重原理。
- 134.scrapy 中间件有几种类,你用过哪些中间件?
- 135.你写爬虫的时候都遇到过什么反爬虫措施,你是怎么解决的?
- 136.为什么会用到代理?
- 137.代理失效了怎么处理?
- 138.列出你知道 header 的内容以及信息。
- 139.说一说如何打开浏览器访问 www.baidu.com 获取到结果,简述整个流程。
- 140.爬取速度过快时,出现了验证码怎么处理?
- 141.scrapy 和 scrapy-redis 有什么区别?为什么选择 redis 数据库?
- 142.分布式爬虫主要解决什么问题?
- 143.写爬虫是用多进程好还是多线程好? 为什么?
- 144.解析网页的解析器使用最多的是哪几个?
- 145.需要登录的网页,如何在不使用动态爬取的情况下解决 ip、cookie 和 session(其中有一些是动态生成的)的同时限制?
- 146.验证码的解决。
- 147.使用的最多的数据库(mysql,mongodb,redis 等)有哪些?并简述对它的理解?
- 网络编程
- 并发
- Git 面试题
- 160.说说你知道的 git 命令。
- 161.git 如何查看某次提交修改的内容?
-
....博主太懒了字数太多了,不想写了....文章已经做成PDF,有需要的朋友可以私信我免费获取!
- 字符串
python-面试通关宝典
本文全面梳理了Python编程面试中的常见问题,涵盖语言特性、编码规范、数据类型、编码规范、正则表达式等多个方面。从Python与其他语言的区别到各种数据结构的操作,再到正则表达式的应用,深入浅出地解析了Python编程的核心概念和技术。此外,还涉及到了网络编程、并发处理、爬虫技术和Git命令等相关知识,是准备Python面试的宝贵资料。
摘要由CSDN通过智能技术生成