ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

HoRain云--Python 面试高频 100 题精讲:语法、并发、GIL、框架

HoRain云--Python 面试高频 100 题精讲:语法、并发、GIL、框架 1. Python 语言特性Q1Python 是解释型还是编译型Python 先编译为字节码再由虚拟机解释执行。既有编译过程也有解释执行。Q2深拷贝与浅拷贝区别浅拷贝共享内部可变对象深拷贝递归复制。copy.copy和copy.deepcopy。Q3is 和 区别is比较身份比较值。小整数和字符串驻留可能导致is为 True但不应依赖。2. 数据结构Q4列表和元组区别列表可变元组不可变。元组可作为字典键性能略好。Q5字典底层实现哈希表开放寻址。Python 3.7 保持插入顺序。Q6GIL 是什么全局解释器锁保证同一时刻只有一个线程执行字节码。影响 CPU 密集型多线程不影响 I/O 密集型。3. 并发编程Q7多线程、多进程、协程区别多线程共享内存受 GIL 限制多进程独立内存适合 CPU 密集协程单线程异步适合 I/O 密集。Q8线程池和进程池concurrent.futures.ThreadPoolExecutor、ProcessPoolExecutor。Q9asyncio 原理事件循环 协程 Future。遇到 await 挂起切换其他任务。4. 内存管理Q10引用计数和 GC引用计数为主标记清除和分代回收处理循环引用。Q11内存泄漏如何排查tracemalloc、objgraph、gc、psutil。5. 函数与装饰器Q12装饰器原理接受函数返回新函数利用闭包。functools.wraps保留元信息。Q13闭包是什么内部函数引用外部变量外部函数返回内部函数。6. 面向对象Q14__new__和__init__区别__new__创建实例__init__初始化实例。Q15MRO 是什么方法解析顺序C3 线性化。super()按 MRO 调用。7. 框架Q16Django 和 Flask 区别Django 大而全自带 ORM、AdminFlask 轻量灵活。Q17FastAPI 优势异步、Pydantic、自动文档、高性能。Q18DRF 序列化器作用对象与 JSON 互转校验数据。8. 数据库Q19ORM N1 问题循环查询关联对象。使用 select_related、prefetch_related 优化。Q20事务隔离级别读未提交、读已提交、可重复读、串行化。9. 项目经验Q21如何优化接口性能缓存、索引、异步、分页、连接池、CDN。Q22如何设计秒杀限流、削峰、异步下单、库存预扣、分布式锁。10. 答题技巧先结论后原理。结合项目实际。主动说坑和优化。不会的题说思路不要沉默。11. 总结Python 面试不仅考语法更考原理、并发、内存和工程能力。建议按模块复习配合手写代码和项目复盘。
返回列表