Mojo Academy · レッスン

Setによる一意な項目の管理

重複なしでメンバーシップを管理します

レッスン 3/413 ステップ

「Setによる一意な項目の管理」はCoddyKit上の無料Mojo Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはMojo Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Mojo Academyコースには全4レッスンが含まれています。

一意性を管理する

何回出現したかではなく、存在するかどうかだけが重要な場合はSetを使います。各項目を1回だけ保持します。✨

1つの要素型

Setでは、Set[Int]のように角括弧内に1つの要素型を指定します。すべての要素がその型を共有します。

var ids = Set[Int]()

要素を追加する

addを使って値を追加します。すでに存在する値を追加しても何も起こらず、項目の一意性が保たれます。

ids.add(7)
ids.add(7)

重複はまとまる

要素は一意に管理されるため、7を2回追加しても7は1つだけ残ります。Setが自動的に重複を除去してくれます。

存在を高速に確認する

in演算子を使って存在を確認できます。これはSetの大きな強みで、含まれているかどうかを非常に高速に判定できます。

if 7 in ids:
    print("present")

要素数を数える

lenを使うと、Setに含まれる一意な項目数を確認できます。重複によってこの数が増えることはありません。

var size = len(ids)

要素を削除する

removeを使って項目を削除します。削除すると、Setはその値が存在すると報告しなくなります。

ids.remove(7)

Setを反復処理する

Setをループして各要素を処理できますが、順序は保証されません。Setが重視するのは順序ではなく、要素の存在です。

for x in ids:
    print(x)

2つのSetの和集合

unionを使ってSetを結合すると、両方に含まれるすべての項目を、重複なしで取得できます。

var both = a.union(b)

2つのSetの共通部分

intersectionを使うと、共通する項目を取得できます。両方のSetに存在する値だけが残ります。

var common = a.intersection(b)

Setが活躍する場面

重複を除去したい場合や、存在を繰り返し確認したい場合はSetを使います。毎回Listを走査するよりも効率的です。

確認問題

空のSetに値7を追加し、その後もう一度7を追加しました。Setのlenはいくつでしょうか。

まとめ

Setは、高速な存在確認のために一意な項目を保存します。追加と削除にはaddとremove、確認にはin、結合にはunionまたはintersectionを使います。🎯

無料で開始

AI チューターと学ぶ Mojo — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「Setによる一意な項目の管理」レッスンは無料ですか?

はい。「Setによる一意な項目の管理」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Mojo Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Mojo Academyコースには全4レッスンが含まれています。

「Setによる一意な項目の管理」で何を学びますか?

重複なしでメンバーシップを管理します ブラウザで直接実行するハンズオンコードでMojo Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Mojo Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのMojo Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「Setによる一意な項目の管理」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このMojo Academyレッスンでコードを書いて実行できますか?

はい。すべてのMojo Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Listの構築と拡張
  2. Dictによるキーと値のデータ
  3. Setによる一意な項目の管理
  4. 適切なコレクションの選択
← Mojo Academyに戻る