python教程技术文章
-
用一个最小 requests 配方解决 HTTP 请求卡住、慢接口无响应和偶发 5xx 问题:分开设置连接/读取超时,用 Session 统一重试,再封装业务请求函数。478 收藏 -
文章 · python教程 | 2天前 | 日志 · python · 多进程 · Python QueueListener multiprocessing.Queue logging.QueueHandler
用 QueueHandler 把多进程日志交给 QueueListener 统一写出,重点处理 Queue 的关闭顺序、join_thread 阻塞和日志丢失排查。474 收藏 -
Python 批量处理文件时,进度输出不能只追求好看:交互终端需要实时进度,CI 和重定向日志需要稳定文本,Ctrl+C 则要留下可恢复的检查点。本文用标准库实现 TTY 检测、节流输出、SIGINT 安全取消和断点续跑。473 收藏 -
Python logging 的 QueueHandler 能把业务线程和日志写入解耦,但队列满、监听线程退出顺序不对时会出现丢日志。本文拆开背压处理、队列容量和优雅退出的边界,给出可复现的验收代码。473 收藏 -
Python 3.14 会在 return、break 或 continue 让控制流离开 finally 时发出 SyntaxWarning。本文复现异常被吞掉的旧写法,解释清理代码与返回值的边界,并给出兼容迁移和 CI 检查清单。471 收藏 -
文章 · python教程 | 1个月前 | 时间处理 · python · zoneinfo · 后端开发 · UTC · Python DateTime UTC 夏令时 zoneinfo fold
预约、提醒和活动排期里,用户输入的本地时间不能直接当 UTC 保存。本文用一个小型预约转换器说明 Python zoneinfo 的最小用法:保留时区键、把带时区时间转成 UTC,并在夏令时回拨造成的重复时间里明确记录 fold 选择。469 收藏 -
文章 · python教程 | 4天前 | 日志 · logging · Python教程 · 生产运维 · QueueHandler · Python 优雅停机 logging QueueHandler QueueListener 日志不丢
Python logging 使用 QueueHandler 和 QueueListener 后,停机阶段不能只调用 logging.shutdown() 就结束进程。本文用一个可运行的日志队列示例,拆解停止接收、等待队列排空、关闭监听器和异常兜底的顺序,给出生产环境可复查的验收方法。469 收藏 -
用 selectors.DefaultSelector 组织非阻塞 socket 的注册、读事件分发和连接关闭,重点看 EVENT_READ、select、unregister 与 close 的顺序边界。469 收藏 -
Python 动态调用函数时,inspect.signature、Signature.bind 和 BoundArguments.apply_defaults 可以把参数匹配从运行时报错提前到调用前校验。本文用一个命令分发场景拆开位置参数、关键字参数、缺省值和可变参数的边界。467 收藏 -
用 Python sqlite3.Connection.set_authorizer 在 SQL 进入 SQLite 编译阶段前拦截动作,理解 SQLITE_OK、SQLITE_DENY、SQLITE_IGNORE 的差异,并划清审计与安全边界。467 收藏 -
Python argparse 的子命令经常需要共享配置参数。本文用一个可运行的命令行示例说明父解析器、默认值、dest 命名和 help 输出之间的边界,并给出拆分与验收方法。464 收藏 -
Python结合Selenium无头模式实现网页截图的核心步骤是:1.安装selenium库并下载对应浏览器的WebDriver;2.导入webdriver和Options模块;3.创建ChromeOptions对象并添加--headless、--disable-gpu、--window-size等参数;4.实例化webdriver.Chrome并传入配置;5.使用driver.get访问目标URL;6.等待页面加载完成;7.调用driver.save_screenshot保存截图;8.最后使用drive462 收藏 -
文章 · python教程 | 5天前 | 标准库 · 安全 · python · 类型注解 · 类型注解 Python 3.14 annotationlib get_annotations ForwardRef
Python 3.14 新增 annotationlib,允许按 VALUE、FORWARDREF 和 STRING 三种格式读取延迟注解。本文用插件注册和文档生成两个小场景,拆开格式选择、未定义名称与不可信注解的风险边界。462 收藏 -
文章 · python教程 | 1个月前 | 命令行 · 异常处理 · Input · Python教程 · ValueError · 命令行交互 ValueError Python input int 输入校验 EOFError
Python 的 input 总会返回字符串,直接交给 int 转换时,空值、字母和终端输入结束都会让交互变得难用。文章从用户实际输入出发,给出循环校验、范围限制、退出命令和 EOFError 边界的最小实现,并附上核对清单。458 收藏 -
文章 · python教程 | 3天前 | 日志 · python · 运维 · logging · RotatingFileHandler · 多进程日志 日志滚动 Python logging.handlers RotatingFileHandler 备份数量
Python 的 RotatingFileHandler 可以按文件大小切换日志文件,但 backupCount、encoding、delay 和多进程写入边界很容易被误配。本文从一个日志文件不断覆盖的现场出发,逐项验证滚动规则、备份数量和进程隔离问题。458 收藏