1. ホーム
  2. python

[解決済み] なぜPythonにはタプルの内包がないのですか?

2022-03-21 13:04:31

質問

ご存知のように、リスト理解には、次のようなものがあります。

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

といった辞書の理解もあります。

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

しかし

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

は、ジェネレータではなく tuple を理解することができます。なぜでしょうか?

私の推測では tuple はimmutableですが、これは答えになっていないようです。

解決方法は?

ジェネレータ式を使用することができます。

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

が、括弧はすでに...ジェネレータ式に取られていた。