PR

問題編 リストを理解する

python

テーマ:活用!Pythonのリスト操作を学んでみよう!

Pythonのリストとは

リストはPythonで用意された基本のデータ構造です。複数の値を順序よく格納でき、効率的に扱うことができます。この投稿ではリストの基本操作を理解しながら演習問題に挑戦してみましょう。

リスト操作で練習問題を解いてみよう

ここでは、リスト操作に関する基礎的な問題を解きながら理解を深めましょう。


問題1: リストに変数を追加しよう!

以下のコードを完成させて、変数 xy をリストに追加してください。そしてリストを出力してください。

x = "apple"
y = "banana"
my_list = []  # 空のリスト

# ここにコードを書いてください

print(my_list)

ヒント:.append() メソッドを使ってリストに要素を順番に追加します。

回答

x = "apple"
y = "banana"
my_list = []
my_list.append(x)
my_list.append(y)
print(my_list)

解説

.append() のメソッドを使うことでリストに要素を追加することができます。このコードを実行すると以下の結果になります:

['apple', 'banana']

問題2: リストの要素を取得してみよう!

次のコードを完成させて、リスト `fruits` の 2 番目の要素を取得して出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:インデックスを指定します。インデックスは 0 から始まります。

回答

fruits = ["apple", "banana", "cherry", "date"]
print(fruits[1])

解説

インデックスを使うことで特定の要素を取得することができます。`fruits[1]` を指定することで「banana」が取得できます。結果は以下の通りです。

banana

問題3: リストの要素を更新しよう!

以下のリストの3番目の要素「cherry」を「orange」に更新してください。そして更新後のリストを出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:インデックスを指定して、新しい要素に代入しましょう。

回答

fruits = ["apple", "banana", "cherry", "date"]
fruits[2] = "orange"
print(fruits)

解説

インデックスを指定することで、リスト内の値を変更することができます。このコードでは「cherry」が「orange」に更新されています。

['apple', 'banana', 'orange', 'date']

問題4: リストに要素を追加しよう!

リスト fruits に新しい要素「grape」を追加してください。そしてリストを出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:.append() メソッドを使ってリストに要素を追加します。

回答

fruits = ["apple", "banana", "cherry", "date"]
fruits.append("grape")
print(fruits)

解説

append() メソッドを使うことで、リストに要素を末尾から追加できます。

['apple', 'banana', 'cherry', 'date', 'grape']

問題5: for文でリストの内容を表示しよう!

次のリストを使用して、すべての要素を1行ずつ出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:for文を使って、要素を一つずつ出力しましょう。

回答

fruits = ["apple", "banana", "cherry", "date"]
for fruit in fruits:
    print(fruit)

解説

forを使うことで、リスト内のすべての要素を簡単にループして出力できます。

apple
banana
cherry
date

問題6: 要素の条件付き検索

リスト fruits の中から “b” で始まる要素だけを出力してください。

fruits = ["apple", "banana", "cherry", "blueberry", "date"]

# ここにコードを書いてください

ヒント:要素を一つずつ出力し、条件に一致する要素を検索しましょう。

回答

fruits = ["apple", "banana", "cherry", "blueberry", "date"]
for fruit in fruits:
    if fruit.startswith("b"):
        print(fruit)

解説

条件分岐を使ってリスト内の特定条件に一致する要素を検索できます。startswith() を活用しています。

banana
blueberry

問題7: リストから要素を削除しよう!

リスト fruits から要素「banana」を削除してください。そして更新後のリストを出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:要素を削除するメソッドがあります。

回答

fruits = ["apple", "banana", "cherry", "date"]
fruits.remove("banana")
print(fruits)

解説

リストの要素を削除する場合は、remove() メソッドを使用します。この方法では、指定した要素「banana」を削除できます。

['apple', 'cherry', 'date']

問題8: スライスを使って部分的な要素を取得しよう!

次のリストから1番目と2番目の要素だけを取得し、新しいリストとして出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:スライス構文を使用します。

回答

fruits = ["apple", "banana", "cherry", "date"]
new_list = fruits[0:2]
print(new_list)

解説

スライス構文 [開始インデックス:終了インデックス] を使うことで、リストから特定範囲の要素を取得できます。この場合、インデックス0と1の要素を取得しています。

['apple', 'banana']

問題9: リスト内包表記を使って新しいリストを作成しよう!

次のリストの中から、要素の文字数が5文字以上のものだけを抽出して新しいリストを作成し、出力してください。

fruits = ["apple", "banana", "cherry", "date", "blueberry"]

# ここにコードを書いてください

ヒント:文字数のカウントにlen()を使用します。

回答

fruits = ["apple", "banana", "cherry", "date", "blueberry"]
new_list = [fruit for fruit in fruits if len(fruit) >= 5]
print(new_list)

解説

リスト内包表記を使えば、条件を指定して新しいリストを簡潔に作成できます。このコードでは要素の文字数を len() で評価し、条件に一致する要素を抽出しています。

['apple', 'banana', 'cherry', 'blueberry']

問題10: リストを逆順に並べ替えよう!

次のリストを逆順に並べ替えて出力してください。

fruits = ["apple", "banana", "cherry", "date"]

# ここにコードを書いてください

ヒント:リストを逆順に並び替えるにはreverse()メソッドを使用します。

回答

fruits = ["apple", "banana", "cherry", "date"]
fruits.reverse()
print(fruits)

解説

reverse() メソッドを使うことで、元のリストを逆順に並べ替えることができます。この操作でリスト内の要素順が反転します。

['date', 'cherry', 'banana', 'apple']

まとめ

たくさんの問題演習お疲れ様でした。
この記事ではPythonのリスト操作に関する10個の問題を通して、以下の内容を学びました。

  • 問題1: リストに要素を追加する方法を学びました。
  • 問題2: インデックスを使ってリストから特定の要素を取得する方法を学びました。
  • 問題3: リスト内の要素を更新する方法を学びました。
  • 問題4: `append()` を使ってリストの末尾に要素を追加する方法を学びました。
  • 問題5: `for` 文を使ってリスト内のすべての要素を順番に出力する方法を学びました。
  • 問題6: 条件分岐を使って特定条件に一致するリストの要素を取得する方法を学びました。
  • 問題7: `remove()` を使ってリストから特定の要素を削除する方法を学びました。
  • 問題8: スライス構文を使ってリストから部分的な要素を抽出する方法を学びました。
  • 問題9: リスト内包表記を使って条件に一致する新しいリストを作成する方法を学びました。
  • 問題10: `reverse()` を使ってリストを逆順に並べ替える方法を学びました。

以上の問題を解くことで、リスト操作の基礎から応用まで幅広く学び、Pythonのリストを効率よく扱うスキルを身につけることができました。

次回予告

次回は、Pythonのセット型(set)に関する問題に挑戦します。セット型は重複しない要素を扱うためのデータ構造であり、リストとは異なる特徴を持っています。セット型を使った問題を通して、理解を深めていきましょう!お楽しみに!

コメント

タイトルとURLをコピーしました