
Pytest 如何断言代码抛出了指定异常?
用 pytest.raises 上下文管理器:with pytest.raises(ValueError): 调用代码。可配合 match 参数校验异常消息文本。本文给出完整示例与进阶用法。
聚焦概念、架构、排障、价格与选型,一篇解决一个明确问题。

用 pytest.raises 上下文管理器:with pytest.raises(ValueError): 调用代码。可配合 match 参数校验异常消息文本。本文给出完整示例与进阶用法。

Logstash 启动加 --config.reload.automatic 即开启配置热重载,--config.reload.interval 控制检查间隔(默认 3 秒)。

Ruby Logger 通过 logger.level = Logger::DEBUG 等常量设置级别;Rails 用 config.log_level。本文给出 Logger 级别表、动态调整与 Rails 配置方法。

调整列顺序最直接的方式是按新顺序重新选择列:df = df[['col3', 'col1', 'col2']];把某列提前用 insert+pop 组合。本文给出重排、前置、排序三种写法。

logging 时间格式在 Formatter 中用 %(asctime)s 输出,datefmt 参数控制格式:datefmt='%Y-%m-%d %H:%M:%S'。毫秒用默认逗号或自定义 formatTime。本文给出示例。

Logstash 条件语法用 if [fieldname] 判断字段存在,if ![fieldname] 判断不存在;嵌套字段写 [a][b]。本文给出条件示例与空字符串的区别。

Logstash 判断 tag 用 in 运算符:if "tagname" in [tags];判断不存在用 not in 或否定。本文给出语法示例与 tags 数组的常用操作。

Pythonic 的判空写法是 if not my_list:——利用空列表为 False 的真值特性;len(my_list) == 0 也可用但不够简洁。本文给出推荐写法与 None 的区分。

用 hasattr(obj, 'attr') 检查属性是否存在;配合 getattr(obj, 'attr', 默认值) 安全取值。本文给出用法、注意事项与动态属性场景。

用 in 运算符:'sub' in text 返回布尔值;找位置用 str.find()(找不到返回 -1)或 str.index()(找不到抛异常)。本文给出用法与忽略大小写的写法。

空字符串判断用 if not s:;要同时把纯空白(空格/制表符)当空用 if not s.strip():。本文给出写法与 None、空白的区分处理。

str.isdigit() 判断纯数字;含小数点/负号的用 try float(s) 捕获 ValueError;isnumeric/isdecimal 有细微差别。本文给出各方法对比与推荐写法。