
Python 中如何对字典按键(或按值)排序?
Python 字典排序:sorted(d.items(), key=lambda x: x[0]) 按键排序,x[1] 按值排序,结果是元组列表;dict() 包回去得到有序字典。本文给出各种写法。
聚焦概念、架构、排障、价格与选型,一篇解决一个明确问题。

Python 字典排序:sorted(d.items(), key=lambda x: x[0]) 按键排序,x[1] 按值排序,结果是元组列表;dict() 包回去得到有序字典。本文给出各种写法。

Python 列表分块:列表推导式 [l[i:i+n] for i in range(0, len(l), n)] 最直观;itertools 的 batched(3.12+)更优雅。本文介绍各种分块方法。

Python 一行命令启动静态文件服务器:python3 -m http.server 8000。本文介绍命令行用法、指定端口/目录、编程方式及安全提醒。

Ubuntu 上 cron 任务输出默认发邮件,配置 rsyslog 可以把 cron 输出统一进 syslog。方法:放开 rsyslog 的 cron 日志配置,或在 crontab 中用 logger 命令。

阻止 Logstash 自动创建默认映射的方法:提前在 Elasticsearch 中创建带显式 mapping 的索引、配置索引模板、或在 Logstash output 中指定自定义模板。

pytest 运行单个文件:pytest tests/test_file.py;运行文件里某个用例:pytest tests/test_file.py::test_name;加 -k 按名称过滤。本文汇总精确定位测试的各种写法。

Fluent Bit 截断超长日志最灵活的方式是用 Lua filter 写脚本按长度截断字段。本文给出 truncate.lua 示例和 Fluent Bit 配置,以及观测云 Pipeline 的等价做法。

pip 没有内置的"升级全部"命令,常用方案:pip list --outdated 逐个升级,或用脚本循环升级,或 pip-review 工具一键完成。本文介绍各种方案及注意事项。

Python 大小写转换:upper() 转大写、lower() 转小写、capitalize() 首字母大写、title() 每个单词首字母大写、casefold() 更彻底的小写比较。本文汇总各种方法。

创建指定 Python 版本的虚拟环境:venv 只能用当前版本,virtualenv 包支持 -p 参数指定其他版本的解释器路径。pyenv 可管理多版本。本文介绍完整做法。

Logstash 处理 JSON 日志两种方式:input 的 codec => json 整个事件按 JSON 解析,或 filter 的 json 插件解析 message 字段。本文给出配置示例及常见问题。

Python 多模块日志最佳实践:每个模块 logger = logging.getLogger(__name__),只在程序入口配置一次(basicConfig 或 fileConfig),子 logger 自动继承配置。