プログラミング上達のコツは学習初期段階でとにかく手を動かしてコーディングすることです。
本シリーズでは Python の初学者に向けたコーディング問題を出題します。
今回は リストの基本操作、ループ処理、変更・追加・削除 を学習します。コーディング指示に従ってコーディングしてみましょう!
目次
学習の進め方
- プログラム説明および目的を確認し、どのようなプログラムで何を学ぶかイメージしましょう。
- コーディング指示に従ってコーディングをします。
もし分からなければ、コード例を確認しても良いです。 - 自分の出力結果と出力結果例を比較してみましょう。
- コード例を確認し、自分のコードと比較してみましょう。
コード例は「あくまでも例」なので完全に一致する必要はありません。 - 最終的にはコーディング指示だけでコーディングできるよう、繰り返し練習しましょう。
Python コーディング問題 1:旅行の計画
プログラム説明
旅行の計画を立てるために、訪れたい都市のリストを作成し、そのリストを表示するプログラムを作成します。
コーディング指示
新しい Python ファイル travel_plan15_1.py を作成する
- 任意のエディタを開き、新しいファイルを作成します。
- ファイル名を
travel_plan15_1.pyとして保存します。
以下の手順に従ってプログラムを作成してください。
- 空のリスト
citiesを角括弧[]を使って作成し、print関数で表示します。 - 空のリスト
cities2をlist()を使って作成し、print関数で表示します。 - 訪れたい都市をリスト
citiesに["Tokyo", "Kyoto", "Osaka", "Hiroshima", "Fukuoka"]で追加し、print関数で表示します。 citiesの各都市にインデックスを使ってアクセスし、print関数でそれぞれの都市を表示します。citiesの範囲外のインデックスにアクセスしてエラーを確認します。
出力結果例
タップして出力結果例を表示

Python コード例
タップしてコード例を表示
# 空のリストを角括弧[]で作成
cities = []
print(cities)
# 空のリストをlist()で作成
cities2 = list()
print(cities2)
# 訪れたい都市をリストに追加
cities = ["Tokyo", "Kyoto", "Osaka", "Hiroshima", "Fukuoka"]
print(cities)
# リストの各都市にアクセスして表示
print(cities[0])
print(cities[1])
print(cities[2])
print(cities[3])
print(cities[4])
# リストの範囲外にアクセスしてエラーを確認
#print(cities[5]) # ここでエラーが発生します
Python コーディング問題 2:毎日の計画
プログラム説明
毎日の予定をリストに保存し、for 文と while 文を使って予定をループで表示するプログラムを作成します。
コーディング指示
新しい Python ファイル daily_schedule15_2.py を作成する
- 任意のエディタを開き、新しいファイルを作成します。
- ファイル名を
daily_schedule15_2.pyとして保存します。
以下の手順に従ってプログラムを作成してください。
- 新しいPythonファイル
daily_schedule.pyを作成します。 - リスト
scheduleを["Breakfast", "Work", "Lunch", "Meeting", "Gym", "Dinner", "Sleep"]で作成します。 for文を使ってリストの各予定を取り出し、print関数で表示します。while文を使ってリストの各予定をインデックスを使って取り出し、print関数で表示します。
出力結果例
タップして出力結果例を表示

Python コード例
タップしてコード例を表示
# リストを作成
schedule = ["Breakfast", "Work", "Lunch", "Meeting", "Gym", "Dinner", "Sleep"]
# for文を使ってリストの各予定を表示
print("== for ==")
for activity in schedule:
print(activity)
# while文を使ってリストの各予定を表示
print("== while ==")
i = 0
while i < len(schedule):
print(schedule[i])
i += 1
Python コーディング問題 3:買い物リストの管理
プログラム説明
買い物リストを作成し、リストの要素の変更、追加、削除を行うプログラムを作成します。
コーディング指示
新しい Python ファイルshopping_list15_3.pyを作成する
- 任意のエディタを開き、新しいファイルを作成します。
- ファイル名を
shopping_list15_3.pyとして保存します。
以下の手順に従ってプログラムを作成してください。
- リスト
shopping_listを["Milk", "Bread", "Eggs", "Butter", "Cheese"]で作成し、print関数で表示します。 - インデックス
2の要素をAlmond Milkに変更し、print関数で表示します。 - リストの末尾に
Honeyを追加し、print関数で表示します。 - インデックス
3にJamを挿入し、print関数で表示します。 - インデックス
4の要素を削除し、print関数で表示します。 - 値
Cheeseの要素を削除し、print関数で表示します。
出力結果例
タップして出力結果例を表示

Python コード例
タップしてコード例を表示
# リストを作成
shopping_list = ["Milk", "Bread", "Eggs", "Butter", "Cheese"]
print(shopping_list)
# インデックス2の要素を変更
shopping_list[2] = "Almond Milk"
print(shopping_list)
# リストの末尾に要素を追加
shopping_list.append("Honey")
print(shopping_list)
# インデックス3に要素を挿入
shopping_list.insert(3, "Jam")
print(shopping_list)
# インデックス4の要素を削除
del shopping_list[4]
print(shopping_list)
# 値Butterの要素を削除
shopping_list.remove("Cheese")
print(shopping_list)
Python コーディング問題 4:学習計画の管理
プログラム説明
学習計画を管理するために、リストの全要素を削除する操作とリスト自体を削除する操作を確認するプログラムを作成します
コーディング指示
新しい Python ファイル study_plan15_4.py を作成する
- 任意のエディタを開き、新しいファイルを作成します。
- ファイル名を
study_plan15_4.pyとして保存します。
以下の手順に従ってプログラムを作成してください。
- リスト
study_planを["Math", "Science", "History", "English", "Art"]で作成し、print関数で表示します。 study_planリストの全要素を削除し、print関数で表示します。- 再度リスト
study_planを["Math", "Science", "History", "English", "Art"]で作成し、study_planリスト自体を削除します。 study_planリストを表示してエラーを確認します。
出力結果例
タップして出力結果例を表示

Python コード例
タップしてコード例を表示
# リストを作成
study_plan = ["Math", "Science", "History", "English", "Art"]
# リストの全要素を削除
study_plan.clear()
print(study_plan)
# 再度リストを作成
study_plan = ["Math", "Science", "History", "English", "Art"]
# リスト自体を削除
del study_plan
# リストを表示してエラーを確認
print(study_plan) # ここでエラーが発生します
Python コーディング問題 5:趣味リストの比較とコピー
プログラム説明
趣味リストの比較、値コピーと参照コピーを行い、各操作の違いを確認するプログラムを作成します。
コーディング指示
新しい Python ファイル hobbies_comparison_and_copy15_5.py を作成する
- 任意のエディタを開き、新しいファイルを作成します。
- ファイル名を
hobbies_comparison_and_copy15_5.pyとして保存します。
以下の手順に従ってプログラムを作成してください。
- リスト
original_hobbiesを作成するoriginal_hobbiesという変数にリスト["Reading", "Traveling", "Gardening", "Cooking"]を代入します。
- リストの値コピーを行う
original_hobbies.copy()を使ってリストcopied_hobbiesを作成します。
- リストの参照コピーを行う
original_hobbiesを使ってリストreference_hobbiesを作成します。
- リストの値比較を行い、結果を表示する
==演算子を使ってoriginal_hobbiesとcopied_hobbiesの値比較を行い、結果を表示します。==演算子を使ってoriginal_hobbiesとreference_hobbiesの値比較を行い、結果を表示します。
- メモリアドレスを表示する
id関数を使ってoriginal_hobbiesとcopied_hobbiesのメモリアドレスを表示します。id関数を使ってoriginal_hobbiesとreference_hobbiesのメモリアドレスを表示します。
- アドレス比較を行い、結果を表示する
is演算子を使ってoriginal_hobbiesとcopied_hobbiesのアドレス比較を行い、結果を表示します。is演算子を使ってoriginal_hobbiesとreference_hobbiesのアドレス比較を行い、結果を表示します。
- 変更後の各リストを表示する
original_hobbies,copied_hobbies,reference_hobbiesの内容を表示します。
- リストの変更を行う
original_hobbiesの3番目の要素をHikingに変更します。
- 変更後の各リストを表示する
original_hobbies,copied_hobbies,reference_hobbiesの内容を表示します。
出力結果例
タップして出力結果例を表示

Python コード例
タップしてコード例を表示
# 趣味リストを作成
original_hobbies = ["Reading", "Traveling", "Gardening", "Cooking"]
# リストの値をコピー
copied_hobbies = original_hobbies.copy()
# リストの参照をコピー
reference_hobbies = original_hobbies
# 値比較を行い結果を表示
print("値比較 (original_hobbies と copied_hobbies):", original_hobbies == copied_hobbies)
print("値比較 (original_hobbies と reference_hobbies):", original_hobbies == reference_hobbies)
# メモリアドレスを表示
print("メモリアドレス (original_hobbies):", id(original_hobbies))
print("メモリアドレス (copied_hobbies):", id(copied_hobbies))
print("メモリアドレス (reference_hobbies):", id(reference_hobbies))
# アドレス比較を行い結果を表示
print("アドレス比較 (original_hobbies と copied_hobbies):", original_hobbies is copied_hobbies)
print("アドレス比較 (original_hobbies と reference_hobbies):", original_hobbies is reference_hobbies)
# リストの変更前を表示
print("変更前のリスト:")
print("original_hobbies:", original_hobbies)
print("copied_hobbies:", copied_hobbies)
print("reference_hobbies:", reference_hobbies)
# original_hobbiesの3番目の要素を変更
original_hobbies[2] = "Hiking"
# 変更後の各リストを表示
print("変更後のリスト:")
print("original_hobbies:", original_hobbies)
print("copied_hobbies:", copied_hobbies)
print("reference_hobbies:", reference_hobbies)
プログラミングは実際に手を動かしながら理解を深めることが大切です。次回も引き続き、コーディング問題を解きながらスキルを磨いていきましょう!(参考:Python公式日本語ドキュメント)
(Visited 549 times, 1 visits today)










