Python辞書:知っておくべきことすべて[例付き]
公開: 2020-04-14Pythonを使用している場合は、リスト、文字列、およびタプルについて聞いたことがあるはずです。 今日は、Pythonのもう1つの重要な要素である辞書について説明します。 この投稿を読み終えたら、Python辞書、それらの作成方法、およびそれらの使用方法を比較的よく理解しているはずです。
目次
Python辞書とは何ですか?
Pythonでは、ディクショナリはデータ構造の実装であり、通常は連想配列として知られています。 これには、整理されていないデータ値のコレクション(マップなど)が含まれています。 ただし、要素として単一の値のみを含む他のデータ型とは異なり、ディクショナリに格納されているデータ値は、キーと値のペアを保持します。 これは、辞書を最適化するのに役立ちます。 各キー:値のペアは、その値に関連付けられた一意のキーをマップします。
Python辞書では、キーは一意ですが、値は一意である場合とそうでない場合があります。キーは不変のデータ型(文字列、数値、タプル)である必要がありますが、値は任意の型である可能性があります。 また、Python辞書では、キーで大文字と小文字が区別されます。 したがって、名前は同じですが、大文字と小文字が異なるキーの扱いは異なります。
詳細: Pythonデータ型
辞書とリスト
Pythonでは、辞書とリストは類似点と相違点の両方を共有しています。 辞書とリストで共有される一般的な特性は次のとおりです。
- それらは変更可能です。
- それらは動的です。
- それらはネストできます–リストには別のリストを含めることができ、ディクショナリには別のディクショナリを含めることができます。 また、リストには辞書を含めることができ、その逆も可能です。
辞書とリストの主な違いは、リスト要素は(リスト内の位置に基づいて)インデックスを介してアクセスできますが、辞書要素はキーを介してアクセスされることです。
Python辞書–メソッド
次に、Python辞書で最も一般的に使用されるメソッドのいくつかについて説明します。
- copy() –辞書の浅いコピーを返します。
- clear() –辞書からすべてのアイテムを削除します。
- type() –渡された変数のタイプを返します。
- pop() –キーが提供された後、辞書からアイテムを削除して返します。
- popitem() –任意のアイテム(キー、値)を削除して返します。 また、辞書が空の場合はKeyErrorが発生します。
- get() –キーの値にアクセスするために使用されます。
- items() –ディクショナリのアイテム(キー、値)の新しいビューを返します。
- str() –辞書の印刷可能な文字列表現を生成します。
- pop(key [、d]) – keyを持つアイテムを削除してその値を返し、keyが見つからない場合はdを返します。 ただし、 dが指定されておらず、キーが見つからない場合は、 KeyErrorが返されます。
- get(key [、d]) –キーの値を返します。 キーが存在しない場合は、 dを返します(デフォルトはNone )。
- fromkeys(seq [、v]) – seqからのキーを含む新しい辞書を返し、値はvに等しくなります(デフォルトはNone )。
- update([other]) –既存のキーを上書きすることにより、他のキーと値のペアで辞書を更新します。
辞書を作成する方法は?
キーと値のペアのコンマ区切りリストを中括弧{}で囲むことにより、Pythonディクショナリを作成できます。 コロン「:」は、各キーを関連する値から区切ります。
d = {
<キー>:<値>、
<キー>:<値>、
。
。
。
<キー>:<値>
}
次のように、組み込み関数dict()を使用して辞書を作成することもできます。
#空の辞書
my_dict = {}
#整数キーの辞書
my_dict = {1:'アップル'、2:'ボール'}
#混合キーの辞書
my_dict = {'name':'John'、1:[2、4、3]}
#dict()を使用
my_dict = dict({1:'apple'、2:'ball'})
#各アイテムをペアとして持つシーケンスから
my_dict = dict([(1、'apple')、(2、'ball')])
辞書から要素にアクセスする方法は?
辞書から要素にアクセスするには、そのキー名を参照する必要があります。 get()メソッドを使用してアイテムを取得するか、角かっこ[]内にキー名を指定できます。 ディクショナリにキーが見つからない場合、 get()メソッドはKeyErrorではなくNoneを返します。
辞書から要素にアクセスするために使用されるコードの例を次に示します。
#!/ usr / bin / python
dict = {'Name':'Zara'、'Age':7、'Class':'First'}
print“ dict ['Name']:“、dict ['Name']
print“ dict ['Age']:“、dict ['Age']
辞書の要素を追加または変更するにはどうすればよいですか?
Python辞書は変更可能であるため、要素を追加したり、辞書に含まれている既存のアイテムの値を変更したりすることもできます。 要素はさまざまな方法で辞書に追加できます。 ただし、キーと一緒に定義することにより、一度に1つの値をディクショナリに追加できます。

たとえば、 dict [key]='value'です。 ディクショナリの既存の値を更新するには、組み込みのupdate()メソッドを使用する必要があります。 値がすでに存在する場合はディクショナリに値を追加するときに、値が更新されることを覚えておく必要があります。そうでない場合は、値を持つ新しいキーがディクショナリに追加されます。
my_dict = {'名前':'ジャック'、'年齢':26}
#値を更新
my_dict ['age'] = 27
#出力:{'年齢':27、'名前':'ジャック'}
print(my_dict)
#アイテムを追加
my_dict ['address']='ダウンタウン'
#出力:{'アドレス':'ダウンタウン'、'年齢':27、'名前':'ジャック'}
print(my_dict)
辞書から要素を削除または削除するにはどうすればよいですか?
辞書からアイテムを削除または削除するには、 pop()メソッドを使用できます。 提供されたケットで特定のアイテムを削除し、値を返します。 popitem()メソッドを使用して、ディクショナリから任意の要素(キーと値)を削除して返すこともできます。
すべてのアイテムを一度に削除する場合は、 clear()メソッドを使用できます。 delキーワードを使用して個々の項目を削除したり、 del dict()メソッドを使用して辞書全体を削除したりすることもできます。
del dict()メソッドを使用した例:
#!/ usr / bin / python
dict = {'Name':'Zara'、'Age':7、'Class':'First'}
deldict['名前']; #キー「名前」のエントリを削除します
dict.clear(); #dictのすべてのエントリを削除します
デルディクト; #辞書全体を削除する
print“ dict ['Age']:“、dict ['Age']
print“ dict ['School']:“、dict ['School']
また学ぶ:インドのPython開発者給与
辞書をループする方法は?
Python辞書では、 forループを使用してループすることができます。 辞書をループするとき、辞書のキーは戻り値です。
辞書をループする例は次のとおりです。
thisdictのxの場合:
print(x)
読む:最も重要なPython関数
キーが辞書に存在するかどうかを確認するにはどうすればよいですか?
次のように、「 in 」キーワードを使用して、特定のキーが辞書に存在するかどうかを確認できます。
thisdict = {
「ブランド」:「フェラーリ」、
「モデル」:「デイトーン」、
「年」:「1968」
}
thisdictの「モデル」の場合:
print(「はい、「モデル」はthisdict辞書のキーの1つです」)
辞書の長さを決定する方法は?
次のように、 len()メソッドを使用して、ディクショナリの長さを設定できます。つまり、ディクショナリに含まれる要素(キー:値のペア)の数を決定できます。
print(len(thisdict))
辞書をコピーする方法は?
組み込みのcopy()メソッドを使用して辞書をコピーできます。 ただし、dict2はdict1への参照にすぎないため、 dict2 =dict1と入力して辞書をコピーすることはできません。
copy()メソッドを使用した例を次に示します。
thisdict = {
「ブランド」:「フォード」、
「モデル」:「マスタング」、
「年」:1964
}
mydict = thisdict.copy()
print(mydict)
Python辞書:理解
Pythonでは、辞書の理解は、反復可能ファイルから新しい辞書を作成するための簡単でわかりやすい方法です。 これは、式のペア(key:value)と、それに続く中括弧{}内のforステートメントで構成されます。 辞書の理解には、複数のforまたはifステートメントを含めることができます。
各項目が数字とその平方のペアである辞書を作成する例を次に示します。
正方形={x:range(6)内のxのx * x}
#出力:{0:0、1:1、2:4、3:9、4:16、5:25}
print(squares)
続きを読む: Pythonデータ視覚化ライブラリ
まとめ
基本的にはこれで終わりです。Python辞書について知っておく必要のあるすべての基本的な知識です。
Python、データサイエンスのすべてについて知りたい場合は、upGradのデータサイエンス認定コースをご覧ください。このコースは、働く専門家向けに作成されており、10以上のケーススタディとプロジェクト、実践的なハンズオンワークショップ、業界の専門家とのメンターシップ、1対1を提供しています。 -1業界のメンター、400時間以上の学習、トップ企業との仕事の支援。
Pythonでの辞書の必要性は何ですか?
順序付けられていないデータ値のコレクションはPythonディクショナリです。 Pythonでは、マップのようにデータ値を格納するために辞書が必要です。 他のすべてのデータ型では、要素として1つの値しか保持できません。 ただし、ディクショナリはキーと値のペアを保持できます。 このペアにより、辞書の機能が少し最適化されます。
Pythonで辞書を作成するには、要素をすべて「コンマ」で区切って中括弧で囲む必要があります。 ディクショナリの値を繰り返したり複製したりすることはできますが、ディクショナリのキーを繰り返すことはできません。 辞書のキーでは大文字と小文字が区別されるため、名前が同じで大文字と小文字が異なる2つのキーでも、処理が異なります。
Python辞書には何を保存できますか?
辞書は、一意のキーを使用してデータを取得するためにPythonで使用されます。 Python変数に格納できるものはすべて、Pythonディクショナリに格納できます。 リストを作成することで、ある辞書を別の辞書にネストすることもできます。 対照的に、キーは不変である必要があります。
特定の値を保存しているキーを呼び出すことにより、保存されている値を簡単に取得できます。 返されたリストに変更を加えると、辞書にも影響します。 ディクショナリに格納されている値と取得されたリストはまったく同じオブジェクトであることを理解する必要があります。
ハッシュテーブルと辞書はどう違うのですか?
ハッシュテーブルは非ジェネリックコレクションですが、ディクショナリはデータ値のジェネリックコレクションです。 同じデータ型と異なるデータ型のキーと値のペアを格納できますが、ディクショナリに格納できるのは同じデータ型のキーと値のペアのみです。
Hashtableにはボックス化とボックス化解除があるため、データ取得プロセスはディクショナリに比べて遅くなります。 ハッシュテーブルに維持される順序はありませんが、ディクショナリに格納されている値の維持された順序が常に表示されます。