how work with python dictionary tutorial with code examples
このチュートリアルでは、Pythonディクショナリを作成する方法と、ディクショナリに格納されているデータにアクセス、追加、変更、削除、および反復する方法について説明します。
これで すべての人のためのPythonトレーニング 、最もよく聞かれる質問を見てみました Pythonインタビューの質問 。このチュートリアルでは、Pythonの辞書に関するすべてを簡単な例とともに説明します。
Pythonの辞書は、キーと値のペアのコレクションです。各キーは値に接続されており、キーを使用してそのキーに関連付けられている値にアクセスできます。
キーは数値/文字列にすることができ、キーの値は数値、文字列、リスト、または別の辞書にすることができます。
辞書のリアルタイムの例は、ページ番号に従ってトピックが与えられている本の最後にあります。ここでは、ページ番号をキーと見なすことができ、トピックを値と見なすことができます。
学習内容:
- Pythonで辞書を作成する方法は?
- Python辞書の値にアクセスする方法は?
- 辞書に新しいキーと値のペアを追加する方法は?
- 辞書の値を変更する方法は?
- 辞書内のキーと値のペアを削除する方法は?
- Python辞書を反復処理する
- Python辞書でのネスト
- 結論
- 推奨読書
Pythonで辞書を作成する方法は?
Pythonディクショナリは次の方法で作成されます。
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'}
すべてのキーはコロンでその値に接続され、個々のキーと値のペアはコンマで区切られます。キーと値のペアは、ディクショナリにいくつでも格納できます。
Python辞書の値にアクセスする方法は?
辞書のキーに関連付けられた値にアクセスするには、辞書の名前に続けて角かっこで囲んだキーを指定する必要があります。
入力:
Javaでリンクリストを実装する
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} print(Students('001'))
出力:
ジョン
次の方法で、ディクショナリの複数の値にアクセスできます。
入力:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} print(Students('001'),Students('002')) # Accessing multiple values
出力:
ジョンジェーン
辞書に新しいキーと値のペアを追加する方法は?
ディクショナリは動的であり、既存のディクショナリに任意の数の新しいキーと値のペアを追加できます。
既存の辞書に2人の新しい学生を追加しましょう。
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} Students('005')='Shane' Students('006')='Melisa'
したがって、次の入力を与えると、次のようになります。
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya'} Students('005')='Shane' Students('006')='Melisa' print(Students)
出力は次のようになります。
{'001': 'ジョン'、 '002': 'ジェーン'、 '003': 'ラフル'、 '004': 'リヤ'、 '005': 'シェーン'、 '006': 'メリサ'}
これで、新しく追加されたキーと値のペアにもアクセスできます。
入力:
print(Students('005'))
出力:
シェーン
辞書の値を変更する方法は?
辞書の値を変更するには、辞書の名前、角かっこで囲まれたキー、そのキーに関連付けられた新しい値を指定する必要があります。
次の辞書で考えてみましょう。
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'}
キー001に関連付けられている値をDavidに変更したい場合は、次の方法で簡単に変更できます。
Students('001') = 'David'
プログラムの実行時:
入力:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'} Students('001') = 'David' print(Students('001'))
出力:
デビッド
辞書内のキーと値のペアを削除する方法は?
辞書に保存されている情報が不要になった場合は、delコマンドを使用して、その情報を辞書から削除または削除できます。
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'}
例えば、 上記の辞書から「004」:「Riya」を削除したい場合は、次のコマンドで簡単に実行できます。
del Students('004')
さて、入力を与えることについて:
Students = {'001':'John','002':'Jane','003':'Rahul','004':'Riya','005':'Shane','006':'Melisa'} del Students('004') print(Students)
出力は次のようになります。
{'001': 'ジョン'、 '002': 'ジェーン'、 '003': 'ラフル'、 '005': 'シェーン'、 '006': 'メリサ'}
注意: 辞書は特定の順序に従いません。したがって、プログラムを実行すると、さまざまな順序で出力が得られる場合があります。
例えば、
{'005': 'シェーン'、 '003': 'ラフル'、 '002': 'ジェーン'、 '006': 'メリサ'、 '001': 'ジョン'}
運動:
IDと名前を含む従業員の辞書を作成するプログラムを作成します。後で何人かの従業員を追加し、従業員の1人の情報を更新し、組織を離れる従業員の情報を削除します。
#従業員の辞書の作成
Employees = { 'Emp_001': 'Rahul Khanna', 'Emp_002': 'Surbhi Jain', 'Emp_003': 'Maria Sharapova' } print(Employees)
#2人目の従業員の情報を取得する
print(Employees('Emp_002'))
#さらに2人の従業員を追加
Employees('Emp_004')='Ricky Martin' Employees('Emp_005')='Sanaya Malhotra'
#辞書を印刷して、従業員が更新されているかどうかを確認します
print(Employees)
#Emp_003の情報を更新–名前をMariaCurieに変更
Employees('Emp_003')='Maria Curie'
#更新された情報の確認
print(Employees('Emp_003'))
#従業員1を削除
del Employees('Emp_001') print(Employees)
出力:
{「Emp_001」:「RahulKhanna」、「Emp_002」:「Surbhi Jain」、「Emp_003」:「MariaSharapova」}
スルビジャイン
{「Emp_001」:「RahulKhanna」、「Emp_002」:「Surbhi Jain」、「Emp_003」:「Maria Sharapova」、「Emp_004」:「Ricky Martin」、「Emp_005」:「SanayaMalhotra」}
マリア・キュリー
{「Emp_002」:「SurbhiJain」、「Emp_003」:「Maria Curie」、「Emp_004」:「Ricky Martin」、「Emp_005」:「SanayaMalhotra」}
Python辞書を反復処理する
辞書には大量のデータが含まれている可能性があるため、Pythonでは辞書をループできます。ディクショナリはさまざまな方法で情報を格納できるため、さまざまな方法でディクショナリをループできます。ディクショナリ内のキーと値のペア、キーまたはその値をループできます。
- 辞書のキーと値のペアをループする方法は?
サッカー選手、その名前、身長、体重に関する情報を保存するために使用される新しい辞書の例を見てみましょう。
Player_1 = { 'Name': 'Peter', 'Height' : '5ft 9inch', 'Weight' : '82 Kg' }
ご存知のように、これまでに学んだことに基づいて単一の情報にアクセスできますが、すべての情報に一度にアクセスするにはどうすればよいでしょうか。 forループを使用して、辞書をループできます。
for key,value in Player_1.items(): print('
Key:' +key) print('Value:' +value)
ディクショナリのforループを作成する方法を見るとわかるように、キーと値をそれぞれ保持する2つの変数を作成する必要があります。ここでは、変数名をKeyおよびValueとして使用していますが、k、vなどの任意の変数名を使用することもできます。
次のようにコードを記述しても、出力に違いはありません。
for k,v in Player_1.items(): print('
Key:' +k) print('Value:' +v)
Forステートメントの次の部分には、ディクショナリの名前とそれに続くメソッドitems()が含まれ、キーと値のペアのリストを返します。次に、Forループは、これらのペアのそれぞれを、提供された2つの変数に格納します。前の例では、変数を使用して各キーを出力し、その後に関連する値を出力します。
最初のprintステートメントの「 n」は、の各Key-Valueペアの前に空白行が挿入されることを保証します。 出力 :
charをintc ++に変換します
キー:名前
値:ピーター
キー:高さ
値:5フィート9インチ
キー:重量
値:82kg
- 辞書のすべてのキーをループする方法は?
ディクショナリ内のすべてのキーをループするには、Keysメソッドを使用できます。次の辞書のすべてのキーをループしてみましょう。
Player_1 = { 'Name': 'Peter', 'Height' : '5ft 9inch', 'Weight' : '82 Kg' } for attributes in Player_1.keys(): print(attributes.title())
Player_1.keys()の属性のステートメントは、Pythonに、辞書Player_1からすべてのキーをプルし、変数名に一度に1つずつ格納するように指示します。
プログラムは次の出力を生成します。
名前
高さ
重量
次の方法で入力を行う場合:
for attributes in Player_1: print(attributes.title())
キーのループはディクショナリのデフォルトの動作であるため、出力に違いはありません。
- 辞書のすべての値をループする方法は?
ディクショナリからすべての値を取得することが目的の場合は、valuesメソッドを使用できます。
次の辞書で、学生の名前を取得したいとします。
Students = { '001':'John', '002':'Jane', '003':'Rahul', '004':'Riya' } for name in Students.values() print(name.title())
ここでのforステートメントは、ディクショナリから各値を取得し、それを変数–nameに格納します。 Printステートメントはすべての名前を出力し、次の出力を取得します。
ジョン
ジェーン
ラフル
リヤ
Python辞書でのネスト
ディクショナリのセットをリストまたはアイテムのリストにディクショナリの値として格納したい場合があります。これはネストと呼ばれます。リスト内の辞書のセット、辞書内のアイテムのリスト、または別の辞書内の辞書をネストすることができます。
ネストは強力な機能です。例を使用してそのことを示しましょう。
辞書のリスト
1人のプレーヤーに関するさまざまな情報が含まれているが、より多くのプレーヤーに関する情報を格納する余地がないプレーヤー辞書の例を見てみましょう。
それぞれが異なるプレーヤーを表す3つの辞書を簡単に作成できます。これらの各辞書をPlayersというリストにまとめます。最後に、リストをループして、それぞれを印刷できます。
Player_1 = { 'Name' : 'Peter', 'Height' : '5ft 9inch', 'Weight' : '72 Kg' } Player_2 = { 'Name' : 'John', 'Height' : '5ft 7inch', 'Weight' : '82 Kg' } Player_3 = { 'Name' : 'Rahul', 'Height' : '5ft 11inch', 'Weight' : '65 Kg' } Players = (Player_1,Player_2,Player_3) for Player in Players: print(Player)
出力:
{「名前」:「ピーター」、「高さ」:「5フィート9インチ」、「重量」:「72キロ」}
{「名前」:「ジョン」、「高さ」:「5フィート7インチ」、「重量」:「82キロ」}
{「名前」:「Rahul」、「高さ」:「5フィート11インチ」、「重量」:「65Kg」}
各ディクショナリに1つのオブジェクトに関する複数の種類の情報が含まれている場合、リストに複数のディクショナリを格納するのが一般的です。
例えば、 Webサイトでユーザーごとに辞書を作成し、個々の辞書をusersというリストに保存することができます。リスト内のすべてのディクショナリは、リストをループして各ディクショナリオブジェクトを同じように操作できるように、同じ構造である必要があります。
辞書の辞書
ディクショナリを別のディクショナリ内にネストすることはできますが、そうすると、コードがすぐに複雑になる可能性があります。 例えば、 Webサイトに複数のユーザーがいて、それぞれが一意のユーザー名を持っている場合は、そのユーザー名を辞書のキーとして使用できます。
次に、値がユーザー名に関連付けられているため、辞書を使用して各ユーザーに関する情報を保存できます。次のリストには、各ユーザーに関する3つの情報、つまり、名前、名前、場所が格納されています。ユーザー名と各ユーザー名に関連付けられた情報の辞書をループすることにより、この情報にアクセスします。
users = { 'Rahul99': { 'first': 'Rahul', 'last': 'Jain', 'location': 'New Delhi', }, 'Jane19': { 'first': 'Jane', 'last': 'Aniston', 'location': 'New York', }, } for user, user_info in users.items(): print('
Username = '+user) print('First name = '+user_info('first')) print('Last name = '+user_info('last')) print('Location = '+user_info('location'))
最初に、ユーザー名「Rahul99」と「Jane19」にそれぞれ1つずつ、2つのキーを持つusersという辞書を定義します。各キーに関連付けられている値は、各ユーザーの名前、名前、場所を含む辞書です。ユーザーの辞書をループします。
Pythonは各キーを変数usernameに格納し、各ユーザー名に関連付けられた辞書は変数user_infoに入ります。メインの辞書ループに入ると、ユーザー名を出力します。
内部辞書へのアクセスを開始します。ユーザー情報の辞書を含む変数user_infoには、「first」、「last」、「location」の3つのキーがあります。各キーを使用して、各ユーザーの名、姓、および場所を生成し、各ユーザーについて知っていることの要約を出力します。
プログラムの出力は次のようになります。
ユーザー名= Rahul99
名=ラフル
姓=ジャイナ教
場所=ニューデリー
ユーザー名= Jane19
名=ジェーン
姓=アニストン
場所=ニューヨーク
運動:
都市と呼ばれる辞書を書く。辞書のキーとして、世界の七不思議を持つ3つの都市の名前を使用します。各都市に関する情報の辞書を作成し、その都市が存在する国、おおよその人口、およびワンダーの名前を含めます。
各都市の辞書のキーは、国、人口、不思議のようなものである必要があります。各都市の名前と、それについて保存したすべての情報を印刷します。
#辞書に辞書を作成する
Cities = { 'Newyork': { 'Country' : 'USA', 'population' : '700k', 'wonder' : 'Statue of Liberty' }, 'Agra': { 'Country' : 'India', 'population' : '300k', 'wonder' : 'Taj Mahal' }, 'Paris': { 'Country' : 'France', 'population' : '500k', 'wonder' : 'Eiffel Tower' } }
#辞書内のすべての値をループする
for City, cities_info in Cities.items(): print('
City = ' +City) print(' Country='+cities_info('Country')) print(' Population=' +cities_info('population')) print(' Wonder='+cities_info('wonder'))
出力 :
市=ニューヨーク
国=米国
人口= 700k
ワンダー=自由の女神
市=アグラ
国=インド
人口= 300k
ワンダー=タージマハル
シティ=パリ
国=フランス
人口= 500k
ワンダー=エッフェル塔
結論
このチュートリアルでは、Pythonで辞書を定義する方法と、辞書に格納されている情報を操作する方法を学びました。また、辞書内の個々の要素にアクセスして変更する方法も学びました。
次に、辞書をループし、リストに複数の辞書をネストし、辞書内に辞書をネストする方法を検討しました。
幸せな読書!!
Pythonチュートリアルのシリーズ全体を楽しんでいただけたでしょうか。これらのPythonチュートリアルは、初心者向けの完全なガイドになると確信しています。
前のチュートリアル | 最初のチュートリアル
推奨読書
- Pythonでの入出力とファイル(Pythonを開く、ファイルの読み取りと書き込み)
- Pythonループ-For、While、ネストされたループと例
- Pythonの高度なリストチュートリアル(リストの並べ替え、逆順、インデックス、コピー、結合、合計)
- Python条件ステートメント:if_else、elif、ネストされたifステートメント
- Pythonファイル処理チュートリアル:作成、開く、読み取り、書き込みの方法
- Pythonの導入とインストールプロセス
- Pythonリスト-要素の作成、アクセス、スライス、追加、削除
- Python OOPの概念(Pythonクラス、オブジェクト、継承)
- 初心者のためのPythonチュートリアル(実践的な無料のPythonトレーニング)