set() 集合の構築
最終更新:2026-09-22
set() 集合の構築
set() は可変集合を返す。引数を渡さないと空集合を返し、イテラブルを渡すと重複を除いた集合を返す。
| カテゴリ | 組み込み関数 |
|---|---|
| 種類 | 組み込み関数 |
| Python バージョン | all |
📝 構文
set([iterable])
⚙️ 引数
| iterable 任意 | An iterable; omitted gives an empty set.(デフォルト値:None) |
|---|
戻り値:A mutable set of the deduplicated items; an empty set if called with no args.
💥 例外
TypeError— Raised when the iterable is not iterable.
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
['a', 'b', 'c', 'd', 'r']
[1, 2]
🏷️ 関連する組み込み関数
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Qset() と {} の違いは?
Aset() は空集合、{} は空辞書です!空集合は set() でのみ作成でき、{} は空集合を表せません。
Qset([1, 2, 1, 2]) は何を返しますか?
A{1, 2} を返します。set は自動的に重複を除き、順序もありません。これは「リストの重複削除」の定番の書き方 list(set(lst)) でもあります。
Qset([1, [2]]) が TypeError になるのはなぜ?
A集合の要素はハッシュ可能でなければなりませんが、list は可変のためハッシュ不可です。要素に使えるのは int/str/tuple/frozenset などの不変型だけです。
Qset は挿入順を保持できますか?
Aできません。set は順序のない集合です。順序を保った重複除去が必要なら dict.fromkeys(lst) を使います(Python 3.7+ では辞書が挿入順を保持)。