更新履歴 2017-05-15

2017年5月15日分のPyQの更新内容です。

模範解答修正

「20-3: クラスの利用」4問目、5問目

現在の年から、誕生年を引いたあとにまだ誕生日が来ていない場合はマイナス1する必要がある。 しかし、現在が誕生月より前の月で、誕生の日より後の日だった場合に 年齢-1 されない不具合がありました。

  • 修正前
# 年内で誕生日が来ていない場合はマイナス1
if today.month <= self.birthday.month \
    and today.day < self.birthday.day:
    age -= 1

比較用の日付を作成し、比較を行うように修正しました。

  • 修正後
# 比較用の日付作成(現在の年、誕生日の月、誕生日の日)
comp_birthday = date(today.year, self.birthday.month, self.birthday.day)

# 現在と比較
if today < comp_birthday:
    age -= 1

問題文修正

クエスト「24-1: そこそこ複雑な注文集計処理を作る演習問題」- 仕様書

failureディレクトリー以下のファイル名が order_ から開始していましたが、問題文と整合性が取れていませんでした。

failureディレクトリー以下のファイル名を failure_ からはじまるように修正しました。

クエスト「10-2: 計算、if文の演習」2問目

問題文の表現がわかりづらい内容だったので、修正しました。

  • 修正前:注文希望本数にN本足りません。
  • 修正後:あとN本で、もう1ダース注文できます。

実行時エラー

クエスト「26-2: argparseでスクリプトに引数を渡そう」2問目

実行するとエラーになる不具合を修正しました。

判定改善

判定時に目視では判定しづらい文字を不正解とする処理を修正しました。

  • コロン(:)などの全角と半角の見分けが付きづらい文字
  • 文字列中の全角スペースと半角スペース
  • 全角チルダ「〜」と、”から”「〜」

修正箇所

  • クエスト「2-1: 健康診断のお知らせ作成プログラムを写経する」
  • クエスト「2-5: 健康診断のお知らせ作成プログラムを作成」
  • クエスト「3-1: 水注文プログラムを写経する」
  • クエスト「3-7: 水注文プログラムを作成」
  • クエスト「5-7: 健康診断結果を扱うプログラムを作成する」
  • クエスト「10-1: print()、変数の演習」
  • クエスト「10-2: 計算、if文の演習」
  • クエスト「10-4: 辞書の演習」

誤字脱字

クエスト「5-6: キーの一覧、値の一覧」2問目

解説中の 辞書.values()は辞書に存在するキーの一覧を返します。辞書.values()は辞書に存在する値の一覧を返します。 に修正しました。

クエスト「22-2: 駅弁を探そう」2問目

解説中の 正規表現パターンで文字列を分割ところです。正規表現パターンで文字列を分割できるところです。 に修正しました。

クエスト「24-1: そこそこ複雑な注文集計処理を作る演習問題」2問目

模範解答内の83行目 #対象日のでないファイルは無視する#対象日でないファイルは無視する に修正しました。