single
DictionariesとDictionaryメソッド
メニューを表示するにはスワイプしてください
辞書は、Pythonで最も多用途なデータ構造の一つ。 データをキーと値のペアとして保存し、データの高速な取得や頻繁な変更が必要な場面で不可欠。
食料品店のシナリオでは、辞書を使うことで仕入先情報を効率的に管理でき、各仕入先を名前やIDでリストを検索することなくアクセス可能。
アレックスが食料品店で辞書をどのように活用するかを紹介。
作成方法
辞書は、カンマ区切りのキーと値のペアを波括弧{}で囲んで作成。
# Syntax
dictionary = { <key> : <value>, <key> : <value>, <key> : <value> }
# Example
inventory = { "Apples": 30, "Oranges": 18 }
順序
辞書は要素の挿入順序を保持。ただし、操作は通常位置ではなくキーに基づいて行われる点に注意。
ミュータビリティ(変更可能性)
辞書は変更可能(ミュータブル)であり、作成後にキーと値のペアを追加・更新・削除できる。
注意
辞書は複数の値を許容するが、各キーは辞書内で一意でなければならない。キーが重複して割り当てられた場合、最新の値が以前の値を上書きし、各キーには1つの値のみが対応する。
例
シンプルな辞書型の例。インデックス番号の代わりに、キーを使って辞書の要素にアクセスします。この場合、キーは食料品の名前です。
1234567891011# Dictionary creation groceryItems = { "Milk": 3.49, "Eggs": 2.99, "Bread": 1.99, "Apples": 0.99 } # Extracting dictionary elements by their keys print("Price of Milk:", groceryItems["Milk"]) print("Price of Bread:", groceryItems["Bread"])
Pythonの辞書型は、格納できるデータ型に柔軟性があります。
唯一の制約は、キーが不変(変更不可)な型(strings、numbers、または不変要素のみを含むtuplesなど)でなければならないことです。これにより、キーが変更されないことが保証されます。
一方で、辞書の値は任意の型であり、リストや他の辞書などの可変(変更可能)型も含めることができます。
例えば:
123456789# A dictionary with various types of keys and values store_info = { "Store Name": "Grocery Galore", # String key and string value 42: "Inventory Count", # Integer key and string value ("Bread", "Milk"): [2.99, 1.59] # Tuple key and list value (prices of bread and milk) } # Extracting dictionary element (list) by its key (tuple) print("Data under key ('Bread', 'Milk'):", store_info[("Bread", "Milk")])
辞書メソッド
辞書は効率的なデータ操作を可能にするさまざまな操作やメソッドを提供。よく使われる主なメソッドは以下の通り:
get(): 指定したキーの値を取得し、キーが見つからない場合はNoneを返す。この動作は角括弧(例:grocery_items["Milk"])を使う場合と異なり、存在しないキーの場合はエラーになる;update(): 他の辞書やキーと値のペアのイテラブルから要素を追加し、既存のキーは上書きされる;pop(): 指定したキーを削除し、その値を返す。
注意
Pythonにおける
Noneは特別な値で、**「何もない」や「値が存在しない」**ことを意味し、空であることや結果がないことを示す際によく使われる。
応用例
食料品店の在庫管理用の辞書を更新する必要がある場合、辞書メソッドを使って次のように操作可能:
12345678910111213141516171819202122# Dictionary for a grocery store inventory inventory = { "Apples": 30, "Oranges": 18, "Bananas": 45 } # Get the count of Oranges print("Count of Oranges:", inventory.get("Oranges")) # Update inventory by adding a new item inventory.update({"Mangoes": 20}) print("Updated Inventory:", inventory) # You can also add a new item to the end of the dictionary like this inventory["Pineapples"] = 15 print("Updated Inventory:", inventory) # Remove Bananas from the inventory removed_item = inventory.pop("Bananas") print("Removed Item:", removed_item) print("Current Inventory:", inventory)
スワイプしてコーディングを開始
辞書を使用して食料品店の在庫を管理します。各アイテムは、アイテム名と詳細(商品IDとカテゴリ)を持つキーと値のペアです。
-
辞書
grocery_inventoryを定義して情報を保存します:- "Milk": (113, "Dairy")
- "Eggs": (116, "Dairy")
- "Bread": (117, "Bakery")
- "Apples": (141, "Produce")
-
辞書からアイテム
"Bread"の詳細を取得し、bread_details変数に格納します。 -
新しいアイテム
"Cookies"を、商品ID143とカテゴリ"Bakery"で追加します。 -
アイテム
"Eggs"を辞書から削除します。
出力要件
"Bread"の詳細を出力します:Details of Bread: <$bread_details>。"Cookies"を追加した後、更新された在庫を出力します:Inventory after adding Cookies: <$grocery_inventory>。"Eggs"を削除した後、更新された在庫を出力します:Inventory after removing Eggs: <$grocery_inventory>。
解答
フィードバックありがとうございます!
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください