1. Python 基础问题
变量与作用域
Python 使用动态类型,变量无需声明类型即可赋值。作用域分为全局、局部和闭包作用域。列表 vs 元组
列表(list
)可变,元组(tuple
)不可变。元组在性能和安全性上更优,适合固定数据集合。装饰器原理
装饰器通过@
符号实现,本质是函数嵌套和返回函数。用于扩展函数功能而不修改其定义。
2. 进阶问题
__init__
与__new__
区别__new__
负责创建对象实例,__init__
初始化对象属性。前者返回实例,后者无返回值。多线程与多进程
多线程适合IO密集型任务(如网络请求),多进程适合CPU密集型任务(如计算)。生成器与迭代器
生成器通过yield
实现,迭代器通过__iter__
和__next__
方法实现。生成器更简洁高效。
3. 实战问题
如何优化列表推导式
使用map()
或itertools
可提升性能,避免不必要的计算。常见异常处理
使用try-except-finally
结构捕获异常,finally
用于资源释放。数据库连接池原理
通过复用数据库连接减少开销,使用SQLAlchemy
或pymysql
的连接池功能实现。
扩展阅读
如需深入学习 Python 进阶知识,可访问 Python 进阶教程。