标准库
已收录文章:59篇
-
Python 3.14 为 argparse 增加 suggest_on_error,可在 choices 或子命令拼写错误时给出相近提示。本文用一个备份命令行工具演示如何开启、如何兼容 Python 3.13 及更早版本,以及为什么它不能替代参数语义校验。180 收藏
-
Python 3.14 新增的多解释器线程池能让多个独立解释器在同一进程中并行处理 CPU 密集任务,但它不共享可变对象。本文用一个可验收的小实验检查参数序列化、解释器隔离、异常回收和退出边界,帮助你判断它是否适合现有 Python 服务。308 收藏
-
Python 3.14 新增的多解释器线程池能让多个独立解释器在同一进程中并行处理 CPU 密集任务,但它不共享可变对象。本文用一个可验收的小实验检查参数序列化、解释器隔离、异常回收和退出边界,帮助你判断它是否适合现有 Python 服务。157 收藏
-
Go 标准库 encoding/csv 默认会用首条记录推断字段数,遇到不齐列或引号不规范的文件就可能在中途报错。本文用导入小工具拆开 FieldsPerRecord、LazyQuotes、ParseError 和逐行处理边界。216 收藏
-
Golang · Go问答 | 1个月前 | 标准库 · go · csv · 数据导入 · Go encoding/csv FieldsPerRecord LazyQuotes ParseErrorGo 导入 CSV 时,某一行多一个逗号就可能让整个读取流程报 ErrFieldCount。本文解释 FieldsPerRecord 的默认行为,给出允许可变列、保留原始行号和处理 LazyQuotes 的实战写法,避免把坏数据静默吞掉。224 收藏
-
Go 1.25 将 testing/synctest 正式带入标准库,测试超时、定时器和并发协作时不必再真实等待。本文用一个带 deadline 的通知流程说明 synctest.Test、synctest.Wait、时间推进和版本兼容边界。107 收藏
-
Go 1.24 为基准测试增加 testing.B.Loop,能替代手写 b.N 循环,让每次基准运行只做一次昂贵的准备和清理,也减少循环体被编译器过度优化的机会。本文对比旧写法,演示迁移步骤,并说明基准数据变化时该怎么判断。243 收藏
-
Golang · Go教程 | 2个月前 | WEB开发 · 标准库 · HTTP · go · 路由迁移 Go ServeMux HTTP路由冲突 method pattern host pattern把旧版 Go HTTP 路由迁移到支持方法和主机模式的 ServeMux 时,最容易误判的是注册顺序。本文用冲突示例解释方法、路径、主机三种匹配关系,给出启动期检查、兼容写法和 httptest 回归边界,避免服务上线后才发现请求落到了错误处理器。437 收藏
-
Go html/template 使用自定义函数时,FuncMap 必须在 Parse 或 ParseFiles 前注册,否则模板会在解析阶段报 function 未定义。本文用一个邮件通知模板的小实验,拆开注册顺序、模板错误定位、运行时参数校验和安全边界。451 收藏
-
读取日志头、文件摘要或上传内容前 N 个字节时,io.LimitReader、io.CopyN 和手动缓冲的行为并不一样。本文按目标是限制读取、严格读取还是复用缓冲,给出选择边界、EOF 判断和可验证示例。130 收藏
-
Go 1.24 新增的 os.Root 可以把文件操作限制在指定目录内,减少路径拼接带来的越界风险。本文用一个导入任务目录演示 Open、Join、Mkdir 和遍历文件的安全边界,并用回归测试核对绝对路径、.. 路径和符号链接场景。340 收藏
-
Go 用 bufio.Reader 解析带长度或分隔符的协议时,Peek 只是查看缓冲内容,不会推进读取位置;Discard 才会消费字节。本文用一个简化帧协议拆开 Peek、Read、Discard、UnreadByte 的数据流转和边界处理。414 收藏