今回やること
英単語と意味をセットで持つ単語帳アプリを作ります。
「問題」と「答え」のような組み合わせは、辞書で表すと分かりやすくなります。
完成コード
flashcard_app.py を作ります。
cards = [
{"word": "apple", "meaning": "りんご"},
{"word": "book", "meaning": "本"},
{"word": "study", "meaning": "勉強する"},
]
def show_cards():
for card in cards:
print(f"問題: {card['word']}")
print(f"答え: {card['meaning']}")
print("---")
def count_cards():
return len(cards)
show_cards()
print(f"登録数: {count_cards()}件")
動作確認
python flashcard_app.py
3つの単語と 登録数: 3件 が表示されれば成功です。
コードの考え方
- 1枚のカードは辞書です
- 複数のカードはリストです
- 表示処理を
show_cardsにまとめます - 件数計算を
count_cardsに分けます
よくあるエラー
| エラー | 原因 | 修正 |
|---|---|---|
KeyError | word や meaning のスペル違い | キー名をそろえる |
SyntaxError | 辞書のカンマ忘れ | 各行の区切りを確認 |
| 件数が違う | リストの外に辞書を書いた | cards = [...] の中に入れる |
練習
- 単語を5個に増やす
- 日本語から英語を答える形に変える
add_card関数を作る
次のステップ
問題をランダムに出したい場合は Pythonミニ制作:計算ドリル に進みます。