最新文章
Python 自动管理内存,核心机制拆解与优化指南!
默认分类 2026-08-11
Python 自动管理内存,核心机制拆解与优化指南!
本文按层次拆解 Python 的内存系统,每一个结论都附上可以直接复制运行的示例。Python 如何在内存中存放对象Python 把内存切成两块,用途差别很大。栈(stack) 存放函数调用以及局部变量的 引用,结构是后进先出(LIFO):...
Python 项目配置文件到底用 yaml 还是 json?
默认分类 2026-08-11
Python 项目配置文件到底用 yaml 还是 json?
做Python开发三年多,项目配置文件这个话题我踩过不少坑。yaml和json哪个更适合做配置,网上说法很多。今天我直白说说自己的使用体会。先说json。刚入行时觉得json特别好用。语法简单,写起来快,Python内置的json模块直接读...
Python 压缩 PDF,别只盯着“压缩成功”!
默认分类 2026-08-11
Python 压缩 PDF,别只盯着“压缩成功”!
一个扫描版合同,原文件 38MB,邮件附件限制 20MB。我第一次拿 Python 处理时,脚本运行正常,输出文件也生成了。再看文件大小:37.6MB。这类结果最烦。代码没报错,PDF 也能打开,但基本等于没压。PDF 不是普通文本文件,里...
Python 的 GIL 到底拦住了什么,多线程为啥没提速
默认分类 2026-08-11
Python 的 GIL 到底拦住了什么,多线程为啥没提速
我之前在一家公司带新人,有个刚毕业的同学接了个「把日志解析脚本改成多线程加速」的需求。第二天他兴冲冲跑过来说改完了。我让他贴 benchmark 数据上来——单线程 8 分钟,4 线程 8 分 12 秒,8 线程 8 分 30 秒。线程越多...
这六个 Python 时间复杂度的陷阱,新手几乎全中,尤其第三个。
默认分类 2026-08-11
这六个 Python 时间复杂度的陷阱,新手几乎全中,尤其第三个。
写 Python 代码的时候,很多人觉得时间复杂度这事离自己挺远的。直到线上服务突然卡死,或者面试被问得哑口无言,才意识到掉进了坑里。新手容易踩的坑就这几个,我一个个说清楚。1. 列表的 in 操作很多新手写代码,习惯用 if x in l...
这几个Python神器一定要收藏好!
默认分类 2026-08-11
这几个Python神器一定要收藏好!
大家在写技术分享型文章,写技术分享PPT,或者做技术视频的时候,经常需要贴代码。比较简单的做法是直接复制代码,然后粘贴成文档,稍微美观一点就是直接对开发编辑器界面截图。这两种做法都不够美观,不能区别于其他人的千篇一律。作为技术人,我们还是可...
Python 帮我扛起运营大旗!
默认分类 2026-08-11
Python 帮我扛起运营大旗!
最近参加了一个训练营,作为副教练,承担起训练营的运营工作。事不大,活不少,打卡记录、活动积分、奖励制度、评优方案、趋势对比,应有尽有……开始认为 Excel 就足够应付,没想到第一项工作 —— 人员汇总,就把我难倒了,于是果断拎起 Pyth...
厉害了!Python 的异常信息还能这样展现
默认分类 2026-08-11
厉害了!Python 的异常信息还能这样展现
简介在日常开发中,我们的大部分时间都会花在阅读traceback模块信息以及调试代码上。本文我们将改进traceback模块,让其中的提示信息更加简洁准确。基于这一目的,我们将会自定义Exception Hooks(异常处理钩子),用来去除...
Python虚拟环境到底解决什么问题:virtualenv、venv、conda!
默认分类 2026-08-11
Python虚拟环境到底解决什么问题:virtualenv、venv、conda!
2019年我刚开始在知乎学习Python教程的时候,评论区最常出现的一个问题是"为什么我pip装好了包,PyCharm里却import失败?"。我回答了不下50次"你是不是装到别的Python了",但大多数时候对方根本听不懂我在说什么——直...
图解 Python:数字也能调用方法?一文搞懂“一切皆对象”
默认分类 2026-08-11
图解 Python:数字也能调用方法?一文搞懂“一切皆对象”
写运维脚本时,我们经常会见到两类很“反常”的代码。数字居然能调用方法:number = 10print(number.bit_length())函数居然能放进字典,再像普通数据一样取出来:def restart(service): &nbs...