これはOK作品:タプルDICTする:: TypeError例外を:配列と辞書の更新シーケンス要素#0を変換することはできません
In [104]: i = [(1, 'a')]
In [105]: dict(i)
Out[105]: {1: 'a'}
私が私が上のdict()関数を呼び出した1組を含むリストを持っているようですそれは辞書を返しました。
私が原因の呼び出しに変更されていない:
In [114]: i
Out[114]: [(1, 'a')]
私はこれをしようとした場合:
In [108]: i = (1, 'a')
In [109]: dict(i)
私はTypeError例外を取得:配列と辞書の更新シーケンス要素#0を変換することはできません。
これは、タプルが不変であるためと考えられます。本当なら、私は何も変えていない、そうですか?
上記の作業例では、iはまだiです。
それは私の混乱です。 2つのタプルは2つのメンバを持ち、反復可能なので、2つのメンバが繰り返されるようです。 1 => 'a' – jouell
"iterable内の各項目は、それ自体正確に2つのオブジェクトを持つ繰り返し可能なものでなければなりません。 - あなたは、2メンバーiterablesの** iterable **を渡す必要があります。この外側のiterableには、1つの2-member iterableを含めることができますが、ただ1つの "裸の" 2-member iterableを渡すことはできません。 – Blorgbeard
OKだから、「2タプルのタプルはdict()関数を満たしますが、2タプルはできません」というように、単純に1つの「裸」とすることができます。 (裸の2タプルがリストに入れられない限り)。 – jouell