ホームページ  >  記事  >  バックエンド開発  >  Pythonのリスト、タプル、セット、辞書の違い

Pythonのリスト、タプル、セット、辞書の違い

silencement
silencementオリジナル
2019-06-21 11:25:1012602ブラウズ

Pythonのリスト、タプル、セット、辞書の違い

1. リスト

1. 任意のオブジェクトの順序付きコレクション
リストは、任意の型の値のセットですを特定の順序で結合したもの
2. オフセットで読み込む
リストを構成する値を要素(Elements)と呼びます。各要素はインデックスでマークされており、最初のインデックスは 0 であり、シーケンスの機能を実現できます
3. 可変長、異種混合および任意のネスト
リスト内の要素は、任意の型にすることができます。リスト タイプ、つまりリストは入れ子にすることができます
4. 変数シーケンス
インデックス付け、スライス、マージ、削除、その他の操作をサポートし、それらはすべてその場でリストを変更します
5. オブジェクト参照配列
リストは通常​​の配列として扱うことができます。参照が使用されるときは常に、Python は常にオブジェクトへの参照を指すため、プログラムはオブジェクトの操作のみを処理する必要があります。オブジェクトをデータ構造要素または変数名に割り当てるとき、Python はオブジェクトのコピーではなく、常にオブジェクトへの参照を保存します。

# 2. タプル

#1. 任意のオブジェクトの順序付きコレクション

リストと同じ
2. オフセット経由でアクセス
リストと同じ
3. 不変のシーケンス型に属する
文字列と同様ただし、タプルは不変であり、リスト内のインプレース変更操作やメソッド呼び出しはサポートしません
4. 固定長、異質性、任意のネスト
固定長とは、タプルが不変であることを意味します。コピーされず、他はリスト
5 と同じです。オブジェクト参照の配列
はリストと類似しており、祖先はオブジェクト参照の配列

リストと比較されます。

1. リスト操作が高速です
2. データを「書き込み禁止」にします
3. 文字列の書式設定に使用できます
4. 辞書のキーとして使用できます

3. Dictionary

1. オフセットではなくキーで読み取ります

辞書は連想配列であり、キーと値 (キー) を使用して、キーワードによってインデックス付けされたオブジェクトのコレクションです。 -value) ストレージと検索速度
2. 任意のオブジェクトの順序のないコレクション
辞書内の項目には特定の順序がなく、「キー」で表されます
3. 可変長、異質性、任意の入れ子
リストと同様に、ネストにはリストや他の辞書などを含めることができます。
4. 変数マッピング タイプに属します
順序付けされていないため、シーケンス操作は実行できませんが、リモートで変更してマッピングすることができます。キーを介した値。辞書は唯一の組み込みマッピング タイプ (キーを値にマップするオブジェクト) です。
5. オブジェクト参照テーブル
辞書は、リストと同様に、コピーではなくオブジェクト参照を保存します。辞書のキーは変更できず、リストをキーとして使用することはできません 文字列、プリミティブ、整数などをリストと比較できます 辞書には次のような特徴があります:
1. 検索速度挿入は非常に高速です 高速で、キーが増えても増加しません

2. 大量のメモリを消費し、大量のメモリを浪費します

逆に、リストの場合:
1.
2 要素の増加に伴い、検索と挿入も増加します。スペースをほとんど消費せず、メモリの浪費もほとんどありません。
つまり、dict はスペースを時間と交換する方法です。


4. コレクション

1 . はキーのセットですが、値は保存されず、キーを繰り返すことはできません セットを作成するには、入力セットとしてリストを指定する必要があります (s = set) ([1,2,3])、受信パラメータ [1, 2, 3] はリストであり、表示された set([1, 2, 3]) は 3 つの要素があることだけを示していることに注意してください。このセット内には 2、および 3 が含まれます。表示される [ ] は、これがリストであることを意味するものではありません

2. 繰り返し要素はセット内で自動的にフィルタリングされます

セットは、順序付けされていない繰り返しのない要素のコレクションとみなすことができます数学的な意味での. したがって、2 つのセットは数学的な意味での交差と和集合である可能性があります. 操作を待機しています

forzenset() と呼ばれる別の種類のコレクションがあります。これは凍結されたコレクションです。これは不変であり、ハッシュ値の利点は、辞書のキーとして、または他のコレクションの要素として使用できることです。欠点は、一度作成すると変更できないことです。追加または削除メソッドがありません。

dict との比較

1. .set と dict の唯一の違いは、対応する値が保存されないことです。 .

2. set と dict の原則 同様に、2 つの変数オブジェクトが等しいかどうかを判断することが不可能であり、set 内に「重複する要素が存在しない」という保証がないため、変数オブジェクトを配置することはできません

以上がPythonのリスト、タプル、セット、辞書の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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