unnecessary-double-cast-or-process (C414) (不必要的双重转换或处理 (C414))
Derived from the flake8-comprehensions linter. (源自 flake8-comprehensions linter。)
修复总是可用的。
作用
检查 list(), set(), sorted() 和 tuple() 调用中不必要的 list(), reversed(), set(), sorted() 和 tuple() 调用。
为什么这不好?
通过将列出的函数包装在额外的 list(), set(), sorted() 或 tuple() 调用中来双重转换或双重处理可迭代对象是不必要的。 这样做是多余的,并且可能会使读者感到困惑。
示例
建议改为
此规则适用于各种函数,包括 list(), reversed(), set(), sorted() 和 tuple()。 例如:
- 用
list(iterable)代替list(list(iterable))。 - 用
list(iterable)代替list(tuple(iterable))。 - 用
tuple(iterable)代替tuple(list(iterable))。 - 用
tuple(iterable)代替tuple(tuple(iterable))。 - 用
set(iterable)代替set(set(iterable))。 - 用
set(iterable)代替set(list(iterable))。 - 用
set(iterable)代替set(tuple(iterable))。 - 用
set(iterable)代替set(sorted(iterable))。 - 用
set(iterable)代替set(reversed(iterable))。 - 用
sorted(iterable)代替sorted(list(iterable))。 - 用
sorted(iterable)代替sorted(tuple(iterable))。 - 用
sorted(iterable)代替sorted(sorted(iterable))。 - 用
sorted(iterable)代替sorted(reversed(iterable))。
修复安全性
This rule's fix is marked as unsafe, as it may occasionally drop comments when rewriting the call. In most cases, though, comments will be preserved. (此规则的修复被标记为不安全,因为它在重写调用时有时会删除注释。但在大多数情况下,注释将被保留。)