我有以下代码
expr = pl.when(False).then(None)
for pattern, replacement in replacement_rules.items():
expr = expr.when(pl.col("data").str.contains(pattern))
expr = expr.then(pl.lit(replacement))
expr = expr.when(pl.col("ISO_codes").str.len_chars() > 0)
expr = expr.then(
pl.col("ISO_codes")
.replace(iso_translation, default="Unknown ISO Code")
)
我无法理解如何在不丢失所有“不兼容类型”警告的情况下消除警告,或重写代码以使其消失。
显式类型提示
expr
为 Any
:
expr: Any = pl.when(False).then(None)
...或工会,无论哪个适合您:
expr: ChainedWhen | Then = pl.when(False).then(None)