ホームページ  >  記事  >  バックエンド開発  >  Python 辞書の値を繰り返すことができないのはなぜですか?

Python 辞書の値を繰り返すことができないのはなぜですか?

coldplay.xixi
coldplay.xixiオリジナル
2020-10-28 13:48:379568ブラウズ

Python ディクショナリで重複する値が許可されない理由は次のとおりです: 1. 各キーは 1 つの項目にのみ対応するという明確な原則がある; 2. キーの競合がある場合、最も多くの最近の割り当てが取得されます; 3. キーはハッシュ可能である必要があります。

Python 辞書の値を繰り返すことができないのはなぜですか?

Python 辞書で重複する値が許可されない理由は次のとおりです:

制限はありません標準オブジェクトからユーザー定義オブジェクトまで、任意の Python オブジェクトを使用できますが、辞書内のキーは型制限されています。

1. 1 つのキーを複数の値に対応させることはできません。 1 つの原則を明確にする必要があります。各キーは 1 つの項目にのみ対応できるということです。言い換えると、1 つのキーに対応する複数の値は許可されません (リスト、タプル、その他の辞書などのコンテナー オブジェクトは許可されます)。キーの競合がある場合 (つまり、辞書キーに繰り返し値が割り当てられている場合)、最後 (最新) の割り当てが採用されます。 Python は、ディクショナリ内のキーの競合によるエラーを生成しません。キーの競合が発生した場合、キーと値のペアが割り当てられるたびにチェックされることになり、一定の時間がかかるため、キーの競合はチェックされません。メモリの量。例: >>> dict1 = {'foo':789, 'foo': 'xyz'} >>> dict1 結果: {'foo': 'xyz'}

2 、キーはハッシュ可能である必要があります。ほとんどの Python オブジェクトはキーとして機能しますが、ハッシュ可能なオブジェクトである必要があります。リストや辞書などの可変型はハッシュ可能ではないため、キーとして使用できません。すべての不変型はハッシュ可能であるため、辞書キーとして使用できます。

関連する無料学習の推奨事項: Python チュートリアル(ビデオ)

以上がPython 辞書の値を繰り返すことができないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。