5.1 要素の追加
辞書の要素を扱うことにはもう慣れたよね。それでは、この辞書を簡単に素早く変更する方法を学ぼう。いつものように、要素を追加することから始めるね。
一つの要素を追加する
新しい要素を辞書に追加するには角括弧 []
を使うことができるよ。もしキーがすでに存在していたら、その値が更新されるんだ。
person = {"name": "Alice", "age": 25}
# 辞書に新しい要素を追加する
person["city"] = "New York"
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 25, 'city': 'New York'}
キーがない場合に要素を追加する
時々、キーがまだ辞書に存在しない場合にのみ要素を追加したいことがあるよね。これには条件式を使うことができる。
person = {"name": "Alice", "age": 25}
# キーがない場合のみ要素を追加
if "city" not in person:
person["city"] = "New York"
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 25, 'city': 'New York'}
update()
メソッドを使って複数の要素を追加する
update()
メソッドは複数のキーと値のペアを一度に追加することができるんだ。別の辞書やキーと値のペアを含むイテラブルなオブジェクトを渡すことができる。
person = {"name": "Alice", "age": 25}
updates = {"city": "New York", "country": "USA"}
# 新しい要素で辞書を更新
person.update(updates)
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}
名前付き引数を使うこともできるよ:
person = {"name": "Alice", "age": 25}
# 名前付き引数を使って要素を追加
person.update(city="New York", country="USA")
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}
5.2 要素の変更
要素の変更は追加と同じように動作するよ。でも、キーがすでに古い値を持っていた場合は、それが新しい値に置き換えられるんだ。
キーの値の更新
辞書の値は、単に既存のキーに新しい値を割り当てることで更新することができる。
person = {"name": "Alice", "age": 25, "city": "New York"}
# キーの値を更新
person["age"] = 26
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 26, 'city': 'New York'}
setdefault()
メソッドの使用
setdefault()
メソッドは、指定されたキーの値を返すよ。キーが存在しない場合は、指定されたデフォルト値でキーが辞書に追加されるんだ。
person = {"name": "Alice", "age": 25}
# setdefaultを使って要素を追加
city = person.setdefault("city", "New York")
# 都市の値を出力
print(city) # 出力: New York
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 25, 'city': 'New York'}
update()
メソッドを使って要素を更新する
他の辞書やイテラブルなオブジェクトを使って、update()
メソッドを使って辞書の要素の値を更新することができるよ。
person = {"name": "Alice", "age": 25}
updates = {"age": 30, "city": "New York"}
# update()メソッドを使用して辞書を更新
person.update(updates)
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 30, 'city': 'New York'}
5.3 辞書の要素の削除
辞書から要素を削除するには、いくつかの方法があるよ:
del
操作子を使って要素を削除する
del
操作子は指定されたキーから辞書のキーと値のペアを削除するんだ。
person = {"name": "Alice", "age": 25, "city": "New York"}
# キーを使って要素を削除
del person["age"]
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'city': 'New York'}
pop(key, def_value)
メソッドを使って要素を削除する
pop()
メソッドは指定されたキーを持つ要素を削除し、その値を返すんだ。キーが存在しない場合は、エラーを避けるためにデフォルト値を指定することができるよ。
person = {"name": "Alice", "age": 25, "city": "New York"}
# 要素を削除してその値を取得
age = person.pop("age")
# 削除された値を出力
print(age) # 出力: 25
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'city': 'New York'}
popitem()
メソッドを使って最後に追加された要素を削除する
popitem()
メソッドは、最後に追加されたキーと値のペアを削除して返すんだ。特に古いバージョンのPythonで無秩序な辞書を扱うときに便利だよね。
person = {"name": "Alice", "age": 25, "city": "New York"}
# 最後に追加されたキーと値のペアを削除して取得
last_item = person.popitem()
# 削除されたペアを出力
print(last_item) # 出力: ('city', 'New York')
# 更新された辞書を出力
print(person) # 出力: {'name': 'Alice', 'age': 25}
clear()
メソッドを使って辞書をクリアする
clear()
メソッドは辞書からすべての要素を削除し、空の状態にするんだ。
person = {"name": "Alice", "age": 25, "city": "New York"}
# 辞書をクリア
person.clear()
# クリアされた辞書を出力
print(person) # 出力: {}
GO TO FULL VERSION