news 2026/7/14 19:00:56

一份Python 面试常见问题清单 覆盖从初级到高级

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一份Python 面试常见问题清单 覆盖从初级到高级

下面按面试出现频率 + 实战价值,给你一份Python 面试常见问题清单,覆盖从初级到高级(默认偏web后端方向)。


一、Python 基础(必考 ⭐⭐⭐⭐⭐)

1️⃣ Python 是解释型还是编译型?

  • 解释型语言

  • 但实际上:
    👉.py → 字节码(.pyc) → Python 虚拟机执行


2️⃣ 深拷贝 vs 浅拷贝

import copy copy.copy() # 浅拷贝 copy.deepcopy() # 深拷贝

  • 浅拷贝:只复制第一层引用

  • 深拷贝:递归复制所有对象


3️⃣ 可变 / 不可变类型

不可变:

  • int, float, str, tuple, frozenset

可变:

  • list, dict, set

👉 面试重点:作为 dict key 的必须是不可变类型


4️⃣ is 和 == 的区别

  • ==:值是否相等

  • is:是否指向同一内存地址


5️⃣ None / False / 0 的区别

None == False # False None is False # False bool(None) # False

二、函数 & 语法特性(高频 ⭐⭐⭐⭐)

6️⃣ *args 和 **kwargs

def f(*args, **kwargs): pass

7️⃣ lambda 的使用场景

  • 简单函数

  • sorted / map / filter

sorted(data, key=lambda x: x['age'])

8️⃣ 装饰器(必考

def decorator(func): def wrapper(*args, **kwargs): return func(*args, **kwargs) return wrapper

追问:

  • 多个装饰器执行顺序?

  • 装饰器带参数怎么写?


9️⃣ 生成器 vs 列表

(x for x in range(10))

  • 节省内存

  • 惰性计算

  • 用于大数据、日志流


三、面向对象(中高级 ⭐⭐⭐⭐)

🔟 类变量 vs 实例变量

class A: x = 1 # 类变量 def __init__(self): self.y = 2

1️⃣1️⃣ @staticmethod / @classmethod

  • staticmethod:无 self / cls

  • classmethod:可访问类变量


1️⃣2️⃣ 魔法方法(常问)

  • __init__

  • __new__

  • __str__

  • __repr__

  • __len__

  • __call__


四、内存 & 性能(高级 ⭐⭐⭐⭐)

1️⃣3️⃣ Python 的垃圾回收机制

  • 引用计数

  • 分代回收

  • 解决循环引用


1️⃣4️⃣ GIL 是什么?

  • 全局解释器锁

  • 多线程无法真正并行执行 CPU 密集型任务

  • IO 密集型依然适合多线程


1️⃣5️⃣ 多进程 vs 多线程

类型场景
多线程IO 密集
多进程CPU 密集

五、并发 / 异步(越来越常考 ⭐⭐⭐⭐)

1️⃣6️⃣ asyncio 工作原理

  • 事件循环

  • 协程(async / await

async def f(): await asyncio.sleep(1)

1️⃣7️⃣ 协程 vs 线程

  • 协程:用户态切换,轻量

  • 线程:内核态切换,重


六、常见内置结构 & 原理(高频 ⭐⭐⭐⭐)

1️⃣8️⃣ dict 底层原理

  • 哈希表

  • 开放寻址

  • O(1) 查找(平均)


1️⃣9️⃣ list 底层原理

  • 动态数组

  • 预分配空间


七、异常 & 上下文(必会 ⭐⭐⭐)

2️⃣0️⃣ try / except / finally

try: ... except Exception as e: ... finally: ...

2️⃣1️⃣ with 的原理

  • 上下文管理器

  • __enter__/__exit__


八、标准库 & 实战(加分 ⭐⭐⭐)

2️⃣2️⃣ 常用标准库

  • os / sys

  • datetime

  • re

  • json

  • collections

  • itertools


2️⃣3️⃣ collections 常考

  • Counter

  • defaultdict

  • deque

  • namedtuple


九、框架方向(后端必问 ⭐⭐⭐⭐)

Django / FastAPI 常被追问

  • ORM 查询是否懒加载?

  • 中间件执行顺序

  • Django QuerySet 是否立即执行?

  • FastAPI 为什么快?(ASGI + async)


十、算法 & 逻辑(一定会考 ⭐⭐⭐⭐)

  • 字符串去重

  • LRU 缓存

  • 两数之和

  • 反转链表

  • 排序算法时间复杂度


面试官最爱追问总结

❗ 知道 “是什么” 不够
❗ 一定要会 “为什么 + 场景 + 对比”

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/12 21:12:57

企业级工作流设计秘诀(基于Dify的动态条件路由实现方案)

第一章:企业级工作流设计的核心挑战在构建企业级应用系统时,工作流设计是决定系统可维护性、扩展性和可靠性的关键环节。复杂业务逻辑的流程化管理面临多重挑战,包括状态一致性保障、任务调度可靠性、跨服务协同以及异常处理机制等。状态管理…

作者头像 李华
网站建设 2026/7/14 16:33:22

ESP8266烧入AT固件,并且用AT固件连YY天气平台。

丫丫天气平台网址:http://www.yytianqi.com/ 下方是要通过串口发送的数据,文章后面有用到。 测试 AT 启动 AT 设置 Wi-Fi 模式 Station ATCWMODE1 重启模块 ATRST 连接 的WiFi名称(”11“的地方填自己的WiFi的名称,“66666666”…

作者头像 李华
网站建设 2026/7/14 23:50:57

MATLAB分步傅里叶法仿真:光纤激光器锁模脉冲产生及可饱和吸收镜导致的脉冲漂移问题的解决

MATLAB分步傅里叶法仿真光纤激光器锁模脉冲产生 解决了可饱和吸收镜导致的脉冲漂移问题锁模光纤激光器的数值仿真就像在钢丝绳上跳舞——既要准确描述非线性效应,又要处理色散带来的时空畸变。去年实验室里那台掺镱光纤激光器总出现脉冲位置漂移,后来发现…

作者头像 李华
网站建设 2026/7/14 12:10:29

DAY32 Linux Thread Programming

Linux Thread Programming I. Core Theoretical Foundations of Threads 1. What is a Thread? Definition: A thread is an execution unit within a process, also referred to as a “Lightweight Process (LWP)”. It belongs to a specific process and shares the proce…

作者头像 李华
网站建设 2026/7/14 13:11:21

打破设备壁垒,让实验室智能 “协同作战”

当自动化成为实验室标配,许多用户却陷入新的困境:昂贵的智能设备各自为战,数据孤岛难以打通,流程编排耗时耗力,一个环节出错便可能导致整个实验停滞。如何让自动化真正落地,而非停留在 “硬件堆砌”&#x…

作者头像 李华