05-Python

Python(Part.40)| python【集合(概要編)】

python| まとめ | 現役エンジニア&プログラミングスクール講師「python」のまとめページです。pythonに関して抑えておきたい知識や文法やにについて記事をまとめています。まとめページの下部には「おすすめの学習書籍」「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中...

目標

「データ構造」について理解する。
(pythonの)「集合」について概要を理解する。
(pythonの)「集合」について特徴を理解する。

「データ構造」の概要

「データ構造」とは

「データ構造」とは、0個以上の複数のデータを扱いやすく形式化したもので、pythonには「リスト」「タプル」「辞書」「集合」などがあります。

複数のデータを扱いやすく形式化しているということは、それらを扱うためのルールを持っているということです。「リスト」「タプル」「辞書」「集合」などのデータ構造には取り出し方など含め、操作のための一定のルールがあります。

下の表はWikipediaより引用しています。

(出典)https://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0

例えば、「スタック」だと複数のデータは積み上げられるようなイメージで保管されます。積み上げられるように保管されるので、最初に保管されたデータを取り出す場合は、後から追加されたデータも全て取り除いて取り出す必要があります

このように、格納の方法操作のルールがデータ構造には存在します。

(pythonの)「集合」の概要

(pythonの)「集合」とは

「集合」は要素の重複がなく順序を持たないオブジェクトの集まりです。「集合」
は「 {} 」を利用して表記します。(例 {’tomato’, ‘onion’, ‘cucumber’, ‘carrot’, ‘eggplant’, ‘potato’})

集合は要素の追加・削除を行えるミュータブルなオブジェクトですが、pythonではイミュータブルな集合型としてfrozenset型が準備されています。

(pythonの)「集合」のイメージ

集合の要素には順序と重複がありません。袋に異なるオブジェクトが重複なく、詰められたイメージです。

集合の要素には順序がないため、次のふたつの集合は等価となります。

print({'tomato', 'onion', 'cucumber', 'carrot', 'eggplant', 'potato'} == {'carrot', 'potato', 'onion', 'cucumber', 'tomato', 'eggplant'})

実行結果

集合の要素には重複がないため、次のような集合を作成した場合、重複した値はひとつと見なされます。

print({'tomato', 'tomato', 'tomato', 'onion', 'onion', 'cucumber', 'carrot', 'carrot', 'eggplant', 'eggplant', 'eggplant', 'potato'})

実行結果

(pythonの)「集合」の表記方法

集合には「 {}(集合表記演算子)」を利用します。※辞書の「 {} 」は、同じ記号ですが、辞書表記演算子です。

(pythonの)「集合」の特徴

  1. 要素は順番がない。
  2. 要素は重複がない。
  3. 要素は追加・削除が可能(ミュータブル)。
  4. 要素は空(空集合)でもよい(表記は「set()」※「{}」は辞書の空)。
  5. 空集合の論理値は「False」。
  6. 内包表記による作成が可能。

今回は以上になります。

「python」おすすめ書籍 ベスト3 | 現役エンジニア&プログラミングスクール講師「python」の学習でお勧めしたい書籍をご紹介しています。お勧めする理由としては、考え方、イメージなどを適切に捉えていること、「生のpython」に焦点をあてて解説をしている書籍であることなどが理由です。勿論、この他にも良い書籍はありますが、特に質の高かったものを選んで記事にしています。ページの下部には「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...

ブックマークのすすめ

「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】について解説している記事です。削除方法も掲載しています。...
【パソコン選び】失敗しないための重要ポイント | 現役エンジニア&プログラミングスクール講師【パソコン選び】失敗しないための重要ポイントについての記事です。パソコンのタイプと購入時に検討すべき点・家電量販店で見かけるCPUの見方・購入者が必要とするメモリ容量・HDDとSSDについて・ディスプレイの種類・バッテリーの持ち時間や保証・Officeソフト・ウィルス対策ソフトについて書いています。...
RELATED POST
05-Python

「python」おすすめ書籍 ベスト3 | 現役エンジニア&プログラミングスクール講師

2024年3月20日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
05-Python

Python(Part.24)| python【反復構造(for-else文)】| [Iterative Structures(for-else statement)]

2024年7月1日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
05-Python

python| まとめ | 現役エンジニア&プログラミングスクール講師

2024年11月19日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site