Setによる一意な項目の管理
重複なしでメンバーシップを管理します
「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フィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Listの構築と拡張
- Dictによるキーと値のデータ
- Setによる一意な項目の管理
- 適切なコレクションの選択