python基础面经八股

文章目录

1.*args vs **kwargs区别

*args位置参数,返回的是一个tuple元组

**kwargs关键字参数,返回的是dict

2.实例方法 / 类方法 / 静态方法区别

实例方法,需要实例化对象,通过对象调用方法

类方法,通过类.方法调用,参数为cls指向子类

静态方法,放在类里面的工具函数

3.装饰器的原理

本质:函数作为参数传入,返回包装后的新函数,可以实现前后置增强

4.迭代器和生成器

迭代器,通过next取值

生成器,用yield写出来的特殊迭代器,保存执行的位置,手写迭代器的话需要自己维护状态,生成器代码简短不易出错

5.上下文管理器with

保证退出一定会做清理和释放,可以理解为是try/finally的语法糖

6.slots

限制类的属性,节省内存,加速访问速度

7.一亿个数找前10最大的数字

小顶堆,堆大小设置为10.

顶部元素为最小元素,当某个元素大于顶部元素,顶部元素弹出,加入这个元素调整堆

8.async/await(异步)

async def:定义协程函数

await:定义一个可等待对象,等待I./O让出控制权给事件循环

相关推荐
-今昭-39 分钟前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
2601_962381581 小时前
【转】Python渗透测试工具:sqlmap
python·渗透测试·sql注入·sqlmap·数据库安全
用户3721574261351 小时前
如何使用 Python 从 Word 文档中提取图片
python
黑马程序员毕设3 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
白山编程大哥3 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
_Twink1e3 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
问天_观心3 小时前
大模型微调学习(一)
开发语言·人工智能·学习·语言模型·github
阿里嘎多学长3 小时前
2026-09-03 GitHub 热点项目精选
开发语言·程序员·github·代码托管
昭昭日月明4 小时前
RAGFlow 入门,不用从零造轮子
python·ai编程
源代码•宸4 小时前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang