Pythonの辞書(dict)updateメソッドの使い方を徹底解説
はじめに
Pythonの辞書(dict)型が持つupdate()メソッドは、既存の辞書を効率的に更新・拡張できる便利なメソッドです。この記事では、update()メソッドの基本的な使い方と動作を、具体的なサンプルコードとともにわかりやすく解説します。
update()メソッドの2つの役割
update()メソッドには、主に次の2つの役割があります。
- 辞書に存在しないキーを指定した場合:新しいキーと値のペアを追加する
- 辞書にすでに存在するキーを指定した場合:そのキーの値を上書き(更新)する
新しいキーと値のペアを追加する
まず、次のような辞書を用意します。
>>> d1 = {'name': 'Ravi', 'age': 25, 'marks': 60}update()メソッドの引数として、別の辞書オブジェクトを渡します。
d1.update({"course": "Computer Engg"})実行後の辞書を確認すると、新しいキー「course」とその値が追加されていることがわかります。
>>> d1
{'name': 'Ravi', 'age': 25, 'marks': 60, 'course': 'Computer Engg'}既存のキーの値を更新する
一方、すでに存在するキーを指定した場合は、その値が新しい値で上書きされます。例として、「age」キーの値を21に変更してみましょう。
>>> d1.update({"age": 21})
>>> d1
{'name': 'Ravi', 'age': 21, 'marks': 60, 'course': 'Computer Engg'}このように、update()メソッドは「要素の追加」と「既存値の更新」を1つの操作で柔軟に行えるのが大きな特徴です。
補足:キーワード引数でも指定できる
update()メソッドは、辞書オブジェクトだけでなく、キーワード引数を使って呼び出すことも可能です。
>>> d1.update(city="Tokyo")
>>> d1
{'name': 'Ravi', 'age': 21, 'marks': 60, 'course': 'Computer Engg', 'city': 'Tokyo'}また、Python 3.9以降では「|」演算子による辞書のマージも利用できますが、既存の辞書をその場で更新したい場合には、update()メソッドが最もシンプルで一般的な方法です。
まとめ
update()メソッドを使えば、辞書への要素追加と既存値の更新を簡単かつ直感的に行えます。引数には別の辞書やキーワード引数を渡せるため、状況に応じて使い分けることで、より読みやすく保守性の高いコードを書くことができます。
-
Pythonの__init__.pyとは?役割と基本的な使い方をわかりやすく解説
__init__.pyファイルの役割とはPythonにおいて、__init__.pyファイルは、ディレクトリを「パッケージ」として認識させるために必要なファイルです。このファイルが存在することで、Pythonはそのディレクトリをひとつのパッケージとして扱うことができるようになります。この仕組みには重要な目的があります。それは、stringのような一般的な名前を持つディレクトリが、モジュール検索パス上の後続にある正規のモジュールを意図せず隠してしまう(シャドーイングする)ことを防ぐためです。__init__.pyの中身は空でもOK最もシンプルなケースでは、__init__.pyは単なる空のファイ
-
Pythonのzfill()メソッドとは?文字列の先頭をゼロ埋めする方法を解説
Pythonのzfill()メソッドとはPythonのzfill()メソッドは、文字列の左側(先頭)をゼロ「0」で埋めるための組み込みメソッドです。桁数を揃えたい場合や、ID・日付・数値コードなどを一定のフォーマットに整形したいときに非常に便利です。基本的な使い方は以下のとおりです。引数には最終的な文字列の長さ(幅)を指定します。>>> 25.zfill(6) 000025この例では、元の文字列「25」が2文字なので、指定した幅6になるまで先頭にゼロが4つ追加され、「000025」という結果が得られます。zfill()メソッドのポイント引数に指定した幅より元の文字列が短い場合