集合の反復処理
CoddyのPythonジャーニー「Logic & Flow」セクションの一部 — レッスン 37/78。
セットの反復処理は、リストや辞書の反復処理と似ています。for ループを使用して、セット内の各要素を処理できます。ただし、セットは順序が保持されないため、要素が特定の順序で処理されないことに注意することが重要です。
セットを反復処理する例を次に示します:
my_set = {1, 2, 3, 4, 5}
for element in my_set:
print(element)出力:
1
2
3
4
5この例では、for ループは my_set 内の各要素を反復処理し、それを出力します。セットは特定の順序を保持しないため、出力される要素の順序は異なる場合があります。
セットの要素に特定の順序でアクセスする必要がある場合は、セットをリストに変換してから、ソートされたリストを反復処理することができます。
my_set = {5, 2, 8, 1, 3}
sorted_list = sorted(list(my_set))
for element in sorted_list:
print(element)出力:
1
2
3
5
8この例では、まず list(my_set) を使用して my_set をリストに変換し、次に sorted() を使用してリストをソートします。その後、for ループがソートされたリストを反復処理し、各要素を昇順で出力します。
チャレンジ
簡単input_set という名前のセットを引数として受け取る、iterate_and_filter_set という名前の関数を作成してください。この関数は、セット内の要素を反復処理し、10より大きい数値を除外する必要があります。この関数は、10以下の数値のみを含む新しいセットを返す必要があります。
チートシート
for ループを使用してセットを反復処理します。セットには順序がないことに注意してください。
my_set = {1, 2, 3, 4, 5}
for element in my_set:
print(element)特定の順序でセットを反復処理するには、ソートされたリストに変換します。
my_set = {5, 2, 8, 1, 3}
sorted_list = sorted(list(my_set))
for element in sorted_list:
print(element)自分で試してみよう
def iterate_and_filter_set(input_set):
# ここにコードを書いてくださいこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。