Python: 一般的なデータ構造

このドキュメントはPythonを学ぶガイドの一部です。完全なガイドはこちらからご覧いただけます:包括的なPythonガイド

👋 Stackhero ドキュメントへようこそ!

Stackhero は、デプロイ作業を効率化するために設計された、すぐに使える Python クラウド ソリューションを提供しています:

  • シンプルな git push だけで、数秒でアプリケーションを本番環境にデプロイできます。
  • ご自身のドメイン名を利用可能で、HTTPS 証明書の自動設定により安全な接続も自動で管理されます。
  • 自動バックアップワンクリックアップデート予測可能な料金体系により、インフラ管理ではなくコードに集中できます。
  • プライベートかつ専用インフラ上で、強力なパフォーマンスセキュリティを実現。お客様の環境は分離され、保護されています。

時間を節約し、ワークフローをシンプルに:Stackhero の Python クラウドホスティング なら、わずか 5分でコードを稼働させることができます。

Pythonは、データを効率的に整理、保存、操作するためのいくつかのデータ構造を提供します。最も一般的に使用されるものは、リスト、タプル、辞書、セットです。リストとタプルは要素の順序付けられたシーケンスを維持し、辞書はキーと値のペアを保存し、セットはユニークな要素を保存します。各構造には、特定の使用例に合わせたさまざまなメソッドがあります。

  • リスト: my_list = [1, 2, 3, 4]
  • タプル: my_tuple = (1, 2, 3, 4)
  • 辞書: my_dictionary = {'key1': 'value1', 'key2': 'value2'}
  • セット: my_set = {1, 2, 3, 4}

リストは、変更可能で順序付けられた要素のコレクションです。重複を許可し、他のリスト、タプル、辞書、セットを含むさまざまなデータ型の要素を含むことができます。要素を簡単に追加、更新、削除できます。リストは角括弧[]で定義され、要素はカンマで区切られます。

リストの主なポイント:

  1. 変更可能で順序付けられている
  2. 重複要素を許可
  3. 要素が追加された順序を維持
  4. 複数のデータ型をサポート
  5. 要素の追加、更新、削除の操作を提供

リストは、動的でサイズ変更可能なアイテムのコレクションが必要な場合によく使用されます。

例:

# リストを作成
my_list = [1, 2, 3, 4, 5]

# 要素にアクセス
print(my_list[0])  # 出力: 1
print(my_list[-1])  # 出力: 5

# 要素を追加
my_list.append(6)
print(my_list)  # 出力: [1, 2, 3, 4, 5, 6]

# 要素を更新
my_list[0] = 0
print(my_list)  # 出力: [0, 2, 3, 4, 5, 6]

# 要素を削除
del my_list[0]
print(my_list)  # 出力: [2, 3, 4, 5, 6]

辞書は、変更可能で順序付けられていないキーと値のペアのコレクションです。各キーは一意でなければならず、これらのキーを使用して関連する値にアクセスできます。リストと同様に、辞書はさまざまなデータ型の要素を保存でき、ネストされたコレクションも含めることができます。辞書は中括弧{}で定義され、キーと値のペアはカンマで区切られ、キーと値はコロンで区切られます。

辞書の主なポイント:

  1. 変更可能で順序付けられていないコレクション
  2. 一意のキーを持つキーと値のペアで構成
  3. キーを使用して値にアクセス
  4. さまざまなデータ型を保存

辞書は、設定の検索や頻度のカウントなどのタスクに最適です。

例:

# 辞書を作成
my_dictionary = {'a': 1, 'b': 2, 'c': 3}

# 要素にアクセス
print(my_dictionary['a'])  # 出力: 1

# 要素を追加
my_dictionary['d'] = 4
print(my_dictionary)  # 出力: {'a': 1, 'b': 2, 'c': 3, 'd': 4}

# 要素を更新
my_dictionary['a'] = 0
print(my_dictionary)  # 出力: {'a': 0, 'b': 2, 'c': 3, 'd': 4}

# 要素を削除
del my_dictionary['a']
print(my_dictionary)  # 出力: {'b': 2, 'c': 3, 'd': 4}

タプルは、変更不可能で順序付けられた要素のコレクションです。リストのように機能しますが、一度タプルが作成されると、その要素は変更、追加、削除できません。タプルは丸括弧()で定義され、要素はカンマで区切られます。

タプルの主なポイント:

  1. 変更不可能で順序付けられたコレクション
  2. 複数のデータ型をサポート
  3. 固定サイズの構造

タプルは、変更不可能なコレクションが必要な場合や、コレクションを辞書のキーとして使用したい場合に便利です。

例:

# タプルを作成
my_tuple = (1, 2, 3, 4, 5)

# 要素にアクセス
print(my_tuple[0])  # 出力: 1
print(my_tuple[-1])  # 出力: 5

# 注意: タプルは変更不可能

セットは、変更可能で順序付けられていないユニークな要素のコレクションです。重複を自動的に削除し、順序を維持しません。セットは、リストや辞書のような変更可能な型を除く、さまざまなデータ型の要素を保持できます。セットは中括弧{}またはset()コンストラクタを使用して定義できます。

セットの主なポイント:

  1. 変更可能で順序付けられていない
  2. ユニークな要素のみを保存し、重複を自動的に削除
  3. 変更可能な型(リストや辞書など)を除外

セットは、メンバーシップテスト、重複排除、集合演算(和、積、差)に最適です。

# セットを作成
my_set = {1, 2, 3, 4, 5}

# メンバーシップを確認
print(1 in my_set)  # 出力: True

# 要素を追加
my_set.add(6)
print(my_set)  # 出力: {1, 2, 3, 4, 5, 6}

# 要素を削除して別の要素を追加
my_set.remove(1)
my_set.add(0)
print(my_set)  # 出力: {0, 2, 3, 4, 5, 6}

# 要素を削除
my_set.remove(0)
print(my_set)  # 出力: {2, 3, 4, 5, 6}