我是一名python开发人员,虽然有5年工作经验,但是自认为技术水平还是有很大的提升空间,在22年的4月下旬,进行了一波面试,现将问题总结(不附上答案了,怕答案不标准被打,哈哈哈)
在23年的4月份我又开始准备面试了,面经将不断更新,希望能帮助大家
python 基础相关
- 迭代器和生成器的含义、两者区别
- 上下文管理器的概念
- python的可变元素和不可变元素有哪些
- 集合里的元素可以是list吗?
- python深copy和浅copy的区别
- 用yield实现斐波那契函数
- list的实现原理
- python import的导包过程、如何动态引入包
- python 元类的概念
- 闭包的概念
- 装饰器的概念、多个装饰器的执行顺序、类装饰器怎么写
- python 遍历的广度优先和深度优先的区别、各自使用的优缺点及场景
- 二叉树的前序、中序、后序概念
- 垃圾回收机制、为什么需要使用GIL锁、分代回收有哪些、分代回收有几层
- python协程、多线程、多进程的区别,应用场景
- python的设计模式有哪些?工厂模式和抽象工厂模式的区别
- python中eval()函数的使用、优缺点
- 编程:用两个栈表示队列、如何判断链表是否有环
- python的魔法方法有哪些
- 生产消费者模式
- filter函数、search函数、match函数、zip函数、reduce和map的使用、匿名函数
- python中else的用法有哪些
- 哪些数据类型可以作为字典的建,一个对象可以作为键吗?dict的底层原理
- WSGI和UWSGI的概念和区别
- greenlets是如何使用的
- 异步操作和同步操作的区别应用场景
- 讲讲pandas的使用
----------23年4月份更--------------
1.为什么要使用yield
数据库相关
mysql
- 你知道哪些数据库类型
- mysql和mangodb的区别,两者优缺点
- mysql的索引有哪些、索引为什么快
- 聚簇索引和非聚簇索引的区别
- 索引的底层原理,b树和b+树的区别,为什么要用b+树,mysql如何使用索引
- mysql读写分离怎么做
- mysql事务隔离特性,有关事务的一些命令,例如begin rollback commit等
- 数据库范式
- 怎么查看是否使用了索引
- 索引什么时候回会失效
- 索引下推是什么意思
- 谈谈你理解的锁的概念
- msyql和innodb的文件存储区别
redis
- 持久化的原理
es
- 倒排索引的概念
- 读写一致
运维相关
nginx
- 负载均衡方式
- nginx分流的配置是怎么写的
Docker
- docker的网络是如何做的
- dockerfile是怎么写的
其他
- TCP三次握手和四次挥手、TCP和UDP的区别及应用场景、TCP的粘包和粘包概念
- https和http的区别,SSL证书的原理
- 对称加密和非对称加密的概念
- 单体服务和微服务的区别
- 消息中间件有哪些
- awt怎么使用
- 如何控制并发流量
- 谈谈restful-api
- 网络协议有哪些