第5章: Pythonのリスト、タプル、辞書の操作

データコレクションの基礎

Pythonには、複数のデータをまとめて扱うための「データコレクション」と呼ばれる機能があります。データコレクションを使うことで、同じ種類のデータや異なる種類のデータをひとまとめにして管理でき、効率的なプログラミングが可能です。

Pythonの代表的なデータコレクションは以下の3つです。

  1. リスト(List)
    リストは、複数の要素を順番に保持することができるデータ型です。リストの特徴は、要素を追加したり削除したり、並び替えたりできる柔軟性です。また、リストの要素はミュータブル(mutable: 変更可能)で、リストの中身を自由に変更できます。
  2. タプル(Tuple)
    タプルもリストと似ていますが、違う点はイミュータブル(immutable: 変更不可能)であることです。一度作成されたタプルは、その中身を変更することができません。リストに比べて安全性が高く、変更しないデータを保持するのに適しています。
  3. 辞書(Dictionary)
    辞書は、キーと値のペアでデータを管理します。キーを使ってそれに対応する値を素早く取得できるのが特徴です。辞書はリストやタプルとは異なり、要素に順番がないため、順序が重要でない場合に便利です。

これらのデータコレクションを理解し、使いこなすことができれば、データ処理やプログラムの効率化が大きく進みます。それでは、これらのデータコレクションの詳細と操作方法を一つずつ解説していきます。


リストの使い方(要素の追加・削除・検索)

リストとは?

リストは、Pythonで最も基本的かつ重要なデータコレクションの1つです。リストは、[](角括弧)で囲まれたデータの集まりで、それぞれの要素はカンマで区切られています。リストは非常に柔軟で、文字列、数値、他のリストなど、あらゆるデータ型を含めることができます。

例を見てみましょう。

fruits = ["apple", "banana", "cherry"]
print(fruits)  # ['apple', 'banana', 'cherry']

上記のリストには、3つの文字列が含まれています。このリストは、インデックスを使って各要素にアクセスできます。インデックスは0から始まるため、最初の要素はインデックス0です。

print(fruits[0])  # apple
print(fruits[1])  # banana
print(fruits[2])  # cherry

要素の追加

リストの強力な特徴の一つは、プログラムの実行中に要素を追加できる点です。Pythonでは、**append()**メソッドを使ってリストの末尾に新しい要素を追加できます。

fruits.append("orange")
print(fruits)  # ['apple', 'banana', 'cherry', 'orange']

要素を指定した位置に挿入したい場合は、**insert()**メソッドを使います。このメソッドでは、挿入したい位置(インデックス)と要素を指定します。

fruits.insert(1, "grape")
print(fruits)  # ['apple', 'grape', 'banana', 'cherry', 'orange']

この例では、インデックス1に「grape」を挿入しています。他の要素は自動的に一つ後ろに移動します。

要素の削除

リストから要素を削除するには、いくつかの方法があります。まず、**remove()**メソッドを使って、指定した要素を削除できます。

fruits.remove("banana")
print(fruits)  # ['apple', 'grape', 'cherry', 'orange']

ここでは「banana」を削除しています。削除する要素が存在しない場合、ValueErrorが発生します。

また、**pop()**メソッドを使えば、指定したインデックスの要素を取り出し、リストから削除できます。インデックスを指定しない場合は、リストの最後の要素が削除されます。

fruits.pop(2)
print(fruits)  # ['apple', 'grape', 'orange']

上記の例では、インデックス2の「cherry」を削除しています。

最後に、**del**キーワードを使って任意の位置にある要素を削除したり、リスト全体を削除することもできます。

del fruits[0]
print(fruits)  # ['grape', 'orange']

del fruits  # リスト全体を削除

要素の検索

リスト内で特定の要素が存在するかどうかを確認するには、in演算子を使用します。この演算子は、要素がリスト内に存在する場合にTrueを返し、存在しない場合にFalseを返します。

if "apple" in fruits:
    print("Apple is in the list")
else:
    print("Apple is not in the list")

また、リストの中で特定の要素のインデックスを知りたい場合は、**index()**メソッドを使います。このメソッドは、指定した要素の最初の出現位置(インデックス)を返します。

index = fruits.index("orange")
print(index)  # 1

辞書の使い方、キーとバリューのペア

辞書とは?

辞書(Dictionary)は、キーとそれに対応する値のペアでデータを保持するデータコレクションです。辞書は、{}(波括弧)で定義され、各キーと値のペアはコロン(:)で区切られています。リストやタプルとは異なり、辞書はインデックスではなくキーでアクセスします。

例を見てみましょう。

person = {
    "name": "John",
    "age": 30,
    "city": "New York"
}
print(person)  # {'name': 'John', 'age': 30, 'city': 'New York'}

上記の辞書には、3つのキー(name, age, city)があり、それぞれのキーに対応する値が含まれています。辞書内のデータは、キーを使って取得できます。

print(person["name"])  # John
print(person["age"])   # 30

要素の追加と更新

辞書に新しいキーと値のペアを追加するのは非常に簡単です。存在しないキーを指定して、そのキーに対応する値を代入するだけで新しい要素が追加されます。

person["job"] = "Engineer"
print(person)  # {'name': 'John', 'age': 30, 'city': 'New York', 'job': 'Engineer'}

また、既存のキーに新しい値を代入すると、その値が更新されます。

person["age"] = 31
print(person)  # {'name': 'John', 'age': 31, 'city': 'New York', 'job': 'Engineer'}

要素の削除

辞書から要素を削除する方法もいくつかあります。**del**キーワードを使うことで、特定のキーとその値を削除できます。

del person["city"]
print(person)  # {'name': 'John', 'age': 31, 'job': 'Engineer'}

また、**pop()**メソッドを使うと、指定したキーに対応する値を取得しつつ、辞書からそのキーと値のペアを削除できます。

job = person.pop("job")
print(job)  # Engineer
print(person)  # {'name': 'John', 'age': 31}

辞書の検索

辞書内で特定のキーが存在するかどうかを調べるには、リストと同じくin演算子を使います。

if "name" in person:
    print("Key 'name' exists in the dictionary")

また、**keys()メソッドやvalues()**メソッドを使って、辞書のすべてのキーや値を取得することができます。

keys = person.keys()
print(keys)  # dict_keys(['name', 'age'])

values = person.values()
print(values)  # dict_values(['John', 31])

まとめ

この章では、Pythonのリスト、タプル、辞書という3つの主要なデータコレクションの使い方を学びました。それぞれのデータ型は特定の用途に適しており、適切に使い分けることで、データを効率的に管理できます。リストの柔軟性、タプルの安全性、そして辞書のキーと値の組み合わせを理解し、実際のプログラムで活用していくことが重要です。


初心者におすすめ!プログラミングスクールのススメ

未経験でも気軽に!サブスク型プログラミングスクール【Freeks】

プログラミングを始めたいと思っているそこのあなた、独学よりもプログラミングスクールが断然おすすめです!理由は簡単、続けやすさです。

独学の挫折率、驚きの87.5%!

独学でプログラミングを続けるのは、実はかなりハードルが高いんです。データによると、なんと87.5%もの学習者が途中で挫折しているとか。一方、各プログラミングスクールが公表しているデータによると、受講生の約95%が最後までやり抜いているとのこと。数字を見れば一目瞭然、プログラミングスクールの方が圧倒的に続けやすいんです。

有料と無料、スクールの違いは?

プログラミングスクールには有料と無料のタイプがありますが、その違いは次の通りです:

  • 受講条件が異なる
  • 学べるスキルやカリキュラム内容が異なる
  • 就職や転職のサポート内容が異なる

どちらが自分に合っているか、よく考えて選ぶのが大事です。

サブスク型プログラミングスクール『FREEKS(フリークス)』に注目!

プログラミング初心者でも学びやすいと評判の『FREEKS』、その特徴は以下の通り:

  • 未経験者向けのわかりやすいカリキュラム
  • 経験豊富なエンジニアのサポート
  • オンラインで自分のペースで学習可能

なんと、月会費のみで全カリキュラムが受け放題!Java、PHP、HTML/CSS、JavaScriptなど、多彩なプログラミング言語が学べるんです。しかも、AIが質問に自動で答えてくれるシステムも導入済み。

終了後は副業もサポート!

カリキュラムを終了した後には、Freeks経由で未経験者でも取り組める副業案件の受注が可能。実務を通じてスキルを磨き、市場価値の高いエンジニアへの道が開けます。

独学で悩むくらいなら、まずはプログラミングスクールをチェックしてみるのもアリかもしれませんよ!
 ↓ ↓ こちらをクリック ↓ ↓ 

p-school

Share
Published by
p-school

Recent Posts

第6章: PHPのデータベース操作

PHPを使用してデータベースに…

2週間 ago

第5章: PHPのオブジェクト指向プログラミング(OOP)

オブジェクト指向プログラミング…

2週間 ago

第4章: PHPの関数

プログラミングにおいて、関数は…

2週間 ago

第3章: PHPの配列とコレクション

PHPでの配列とコレクションの…

2週間 ago

第2章: PHPの基本文法

PHPの基本的な構文や使い方を…

2週間 ago