# Why is there no tuple comprehension in Python?

As we all know, there's list comprehension, like

```
[i for i in [1, 2, 3, 4]]
```

and there is dictionary comprehension, like

```
{i:j for i, j in {1: 'a', 2: 'b'}.items()}
```

but

```
(i for i in (1, 2, 3))
```

will end up in a generator, not a `tuple`

comprehension. Why is that?

My guess is that a `tuple`

is immutable, but this does not seem to be the answer.

You can use a generator expression:

```
tuple(i for i in (1, 2, 3))
```

but parentheses were already taken for.. generator expressions.

From: stackoverflow.com/q/16940293