【Python】セットから要素を削除するプログラム:pop()メソッドの使い方
「集合(セット)」という言葉は、数学の世界でもおなじみですね。Pythonにおけるセットは、数学の集合に相当するデータ構造です。セットにはさまざまな要素を格納でき、要素の順序は定義されません(順序を持たないコレクションです)。セットでは要素の追加や削除が自由に行え、要素の反復処理のほか、和集合・積集合・差集合といった標準的な集合演算も実行できます。
この記事では、セットから要素を削除する方法を解説します。ここでは pop() メソッドを使用します。pop() はPythonの組み込みメソッドで、セットから要素を1つずつ取り出しながら削除していくために使われます。
実行例
NEW SET IS ::>
{9, 80, 115, 22, 120}
{80, 115, 22, 120}
{115, 22, 120}
{22, 120}
{120}
set()アルゴリズム
ステップ1: セットを作成する。 ステップ2: pop()関数を使用する。pop()メソッドは、セットから要素を取り出して削除し、その要素を返します。
なお、セットは順序を持たないデータ構造のため、pop() によってどの要素が削除されるかは事前に指定できない点に注意してください(リストの場合と異なり、「末尾の要素」という概念がありません)。
サンプルコード
# セットから要素を削除するPythonプログラム
def remove_element(set1):
print("NEW SET IS ::>")
while set1:
set1.pop()
print(set1)
# ドライバーコード
set1 = set([22, 120, 130, 115, 80, 9])
remove_element(set1)出力
NEW SET IS ::>
{9, 80, 115, 22, 120}
{80, 115, 22, 120}
{115, 22, 120}
{22, 120}
{120}
set()補足:その他の要素削除メソッド
pop() 以外にも、セットから要素を削除する方法があります。
- remove(x): 指定した要素 x を削除します。要素が存在しない場合は KeyError が発生します。
- discard(x): 指定した要素 x を削除します。要素が存在しなくてもエラーにはなりません。
- clear(): セット内のすべての要素を削除し、空のセットにします。
用途に応じてこれらのメソッドを使い分けることで、より柔軟にセットを操作できます。
-
【初心者向け】Pythonで文章から重複する単語をすべて削除する方法
プログラミングでは、与えられた文章から重複する単語を取り除いて整理したい場面がよくあります。本記事では、Pythonの標準ライブラリ「collections.Counter」を活用して、文章内の重複単語を効率的に削除する方法を解説します。処理の概要たとえば、次のような文章が与えられたとします。入力:I am a peaceful soul and blissful soul. 出力:I am a peaceful soul and blissful.このように、「soul」という単語が2回出現している場合、2回目以降の出現を削除し、各単語が1回だけ含まれる文章を作成します。アルゴリズムの手順重
-
Pythonで文字列の末尾から部分文字列を削除する方法
Pythonで文字列の末尾から特定の部分文字列を削除したい場合は、まずその文字列が対象の部分文字列で終わっているかどうかを確認します。終わっている場合は、スライスを使って部分文字列を取り除いた残りの部分だけを取得します。endswith()とスライスを使う方法以下は、rchop関数を実装した例です。文字列が指定した末尾と一致するかをendswith()で判定し、一致すればスライスで末尾を切り取ります。def rchop(string, ending): if string.endswith(ending): return string[:-len(ending)]