Pythonのセットに複数の要素をまとめて追加する方法(update()の使い方)を初心者向けに解説!
先生と生徒の会話形式で理解しよう
生徒
「先生、Pythonのセットに複数の要素を一気に追加する方法はありますか?」
先生
「ありますよ。update()メソッドを使うと、複数の要素をまとめてセットに追加できます。」
生徒
「複数の要素をまとめて追加ってどういう意味ですか?普通の追加方法と何が違うんですか?」
先生
「セットにはadd()というメソッドもあって、これは1つの要素だけ追加します。
でも、update()ならリストや他のセットなど複数の要素をまとめて追加できるんです。」
生徒
「なるほど!具体的な使い方を教えてください!」
先生
「それでは、詳しく説明していきますね。」
1. セットに要素を追加する基本のおさらい
Pythonのセットは重複しないデータの集まりで、要素を追加するときはadd()メソッドを使います。
ただし、add()は1つの要素しか追加できません。
fruits = {"りんご", "みかん"}
fruits.add("バナナ")
print(fruits)
{'みかん', 'バナナ', 'りんご'}
2. 複数の要素をまとめて追加したいときはupdate()を使おう
update()は、リストやタプル、他のセットなど複数の要素をまとめてセットに追加できる便利なメソッドです。
例えば、最初のセットに複数の果物を一気に追加したいときに使います。
fruits = {"りんご", "みかん"}
new_fruits = ["バナナ", "メロン", "ぶどう"]
fruits.update(new_fruits)
print(fruits)
{'みかん', 'バナナ', 'りんご', 'メロン', 'ぶどう'}
このように、new_fruitsというリストに入っている3つの果物をまとめてセットに追加しています。
3. update()の引数にはいろんなデータが使える
update()の引数には、リストだけでなく、タプルや他のセット、さらには文字列も使えます。
例を見てみましょう。
fruits = {"りんご", "みかん"}
# タプルを追加
fruits.update(("バナナ", "メロン"))
print(fruits)
# 他のセットを追加
fruits.update({"ぶどう", "パイナップル"})
print(fruits)
# 文字列を追加(1文字ずつ別の要素として追加される)
fruits.update("キウイ")
print(fruits)
{'みかん', 'バナナ', 'りんご', 'メロン'}
{'パイナップル', 'みかん', 'ぶどう', 'バナナ', 'りんご', 'メロン'}
{'パイナップル', 'みかん', 'ぶどう', 'キ', 'バナナ', 'イ', 'ウ', 'リ', 'メロン'}
文字列の場合は、1文字ずつセットに追加されることに注意しましょう。
4. update()の注意点
- 重複する要素は1つだけ残る
- 引数にイテラブル(繰り返し処理できるもの)が必要(リストやタプル、セット、文字列など)
- 数字や単一の値を追加したい場合は、
add()を使うか、update()に1要素のリストやタプルを渡す
fruits = {"りんご"}
# 単一の数字を追加(失敗例)
# fruits.update(5) # エラーになる
# 正しくはリストやタプルに入れる
fruits.update([5])
print(fruits)
{'りんご', 5}
5. まとめないけど知っておきたいポイント
update()で複数の要素をまとめてセットに追加できる- 引数はリストやタプル、セット、文字列などのイテラブルである必要がある
- 重複した要素はセットの性質上1つだけになる
- 単一の要素を追加したいときは
add()を使うか、update()に1要素のリストなどを渡す