check-and-remove-from-set (FURB132) (检查并从集合中移除) 派生自 refurb 代码检查工具。 修复总是可用的。 作用 检查使用 set.remove 的情况,这些情况可以用 set.discard 替换。 为什么这不好? 如果一个元素存在于集合中,并且应该被移除,那么使用 discard 更简洁,也更符合习惯用法。 已知问题 由于类型推断的限制,这条规则容易出现误报,因为它只会检测实例化为字面量或使用类型注解的集合。 示例 nums = {123, 456} if 123 in nums: nums.remove(123) 建议改为 nums = {123, 456} nums.discard(123) 参考 Python 文档:set.discard()