---
source: crates/ruff_linter/src/rules/flake8_comprehensions/mod.rs
---
C400.py:2:13: C400 [*] Unnecessary generator (rewrite as a list comprehension)
  |
1 | # Cannot combine with C416. Should use list comprehension here.
2 | even_nums = list(2 * x for x in range(3))
  |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ C400
3 | odd_nums = list(
4 |     2 * x + 1 for x in range(3)
  |
  = help: Rewrite as a list comprehension

ℹ Unsafe fix
1 1 | # Cannot combine with C416. Should use list comprehension here.
2   |-even_nums = list(2 * x for x in range(3))
  2 |+even_nums = [2 * x for x in range(3)]
3 3 | odd_nums = list(
4 4 |     2 * x + 1 for x in range(3)
5 5 | )

C400.py:3:12: C400 [*] Unnecessary generator (rewrite as a list comprehension)
  |
1 |   # Cannot combine with C416. Should use list comprehension here.
2 |   even_nums = list(2 * x for x in range(3))
3 |   odd_nums = list(
  |  ____________^
4 | |     2 * x + 1 for x in range(3)
5 | | )
  | |_^ C400
  |
  = help: Rewrite as a list comprehension

ℹ Unsafe fix
1 1 | # Cannot combine with C416. Should use list comprehension here.
2 2 | even_nums = list(2 * x for x in range(3))
3   |-odd_nums = list(
  3 |+odd_nums = [
4 4 |     2 * x + 1 for x in range(3)
5   |-)
  5 |+]
6 6 | 
7 7 | 
8 8 | # Short-circuit case, combine with C416 and should produce x = list(range(3))

C400.py:9:5: C400 [*] Unnecessary generator (rewrite using `list()`)
   |
 8 | # Short-circuit case, combine with C416 and should produce x = list(range(3))
 9 | x = list(x for x in range(3))
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^ C400
10 | x = list(
11 |     x for x in range(3)
   |
   = help: Rewrite using `list()`

ℹ Unsafe fix
6  6  | 
7  7  | 
8  8  | # Short-circuit case, combine with C416 and should produce x = list(range(3))
9     |-x = list(x for x in range(3))
   9  |+x = list(range(3))
10 10 | x = list(
11 11 |     x for x in range(3)
12 12 | )

C400.py:10:5: C400 [*] Unnecessary generator (rewrite using `list()`)
   |
 8 |   # Short-circuit case, combine with C416 and should produce x = list(range(3))
 9 |   x = list(x for x in range(3))
10 |   x = list(
   |  _____^
11 | |     x for x in range(3)
12 | | )
   | |_^ C400
13 |
14 |   # Strip parentheses from inner generators.
   |
   = help: Rewrite using `list()`

ℹ Unsafe fix
7  7  | 
8  8  | # Short-circuit case, combine with C416 and should produce x = list(range(3))
9  9  | x = list(x for x in range(3))
10    |-x = list(
11    |-    x for x in range(3)
12    |-)
   10 |+x = list(range(3))
13 11 | 
14 12 | # Strip parentheses from inner generators.
15 13 | list((2 * x for x in range(3)))

C400.py:15:1: C400 [*] Unnecessary generator (rewrite as a list comprehension)
   |
14 | # Strip parentheses from inner generators.
15 | list((2 * x for x in range(3)))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ C400
16 | list(((2 * x for x in range(3))))
17 | list((((2 * x for x in range(3)))))
   |
   = help: Rewrite as a list comprehension

ℹ Unsafe fix
12 12 | )
13 13 | 
14 14 | # Strip parentheses from inner generators.
15    |-list((2 * x for x in range(3)))
   15 |+[2 * x for x in range(3)]
16 16 | list(((2 * x for x in range(3))))
17 17 | list((((2 * x for x in range(3)))))
18 18 | 

C400.py:16:1: C400 [*] Unnecessary generator (rewrite as a list comprehension)
   |
14 | # Strip parentheses from inner generators.
15 | list((2 * x for x in range(3)))
16 | list(((2 * x for x in range(3))))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ C400
17 | list((((2 * x for x in range(3)))))
   |
   = help: Rewrite as a list comprehension

ℹ Unsafe fix
13 13 | 
14 14 | # Strip parentheses from inner generators.
15 15 | list((2 * x for x in range(3)))
16    |-list(((2 * x for x in range(3))))
   16 |+[2 * x for x in range(3)]
17 17 | list((((2 * x for x in range(3)))))
18 18 | 
19 19 | # Account for trailing comma in fix

C400.py:17:1: C400 [*] Unnecessary generator (rewrite as a list comprehension)
   |
15 | list((2 * x for x in range(3)))
16 | list(((2 * x for x in range(3))))
17 | list((((2 * x for x in range(3)))))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ C400
18 |
19 | # Account for trailing comma in fix
   |
   = help: Rewrite as a list comprehension

ℹ Unsafe fix
14 14 | # Strip parentheses from inner generators.
15 15 | list((2 * x for x in range(3)))
16 16 | list(((2 * x for x in range(3))))
17    |-list((((2 * x for x in range(3)))))
   17 |+[2 * x for x in range(3)]
18 18 | 
19 19 | # Account for trailing comma in fix
20 20 | # See https://github.com/astral-sh/ruff/issues/15852

C400.py:21:1: C400 [*] Unnecessary generator (rewrite as a list comprehension)
   |
19 | # Account for trailing comma in fix
20 | # See https://github.com/astral-sh/ruff/issues/15852
21 | list((0 for _ in []),)
   | ^^^^^^^^^^^^^^^^^^^^^^ C400
22 | list(
23 |      (0 for _ in [])
   |
   = help: Rewrite as a list comprehension

ℹ Unsafe fix
18 18 | 
19 19 | # Account for trailing comma in fix
20 20 | # See https://github.com/astral-sh/ruff/issues/15852
21    |-list((0 for _ in []),)
   21 |+[0 for _ in []]
22 22 | list(
23 23 |      (0 for _ in [])
24 24 |      # some comments

C400.py:22:1: C400 [*] Unnecessary generator (rewrite as a list comprehension)
   |
20 |   # See https://github.com/astral-sh/ruff/issues/15852
21 |   list((0 for _ in []),)
22 | / list(
23 | |      (0 for _ in [])
24 | |      # some comments
25 | |      ,
26 | |      # some more
27 | |  )
   | |__^ C400
   |
   = help: Rewrite as a list comprehension

ℹ Unsafe fix
19 19 | # Account for trailing comma in fix
20 20 | # See https://github.com/astral-sh/ruff/issues/15852
21 21 | list((0 for _ in []),)
22    |-list(
23    |-     (0 for _ in [])
   22 |+[
   23 |+     0 for _ in []
24 24 |      # some comments
25    |-     ,
26    |-     # some more
27    |- )
   25 |+     ]
28 26 | 
29 27 | 
30 28 | # Not built-in list.
