更新履歴 2017-05-24

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

問題修正

クエスト「6-1: 文房具利用状況集計プログラムを写経する」1問目

期待する実行結果 と写経した内容の実行結果が異なっていたため、修正しました。

クエスト「14-1: データ型と論理演算[写経]」1問目

4行目の関数 sales_data(year, month) は、ファイルから取得したデータをリストにする関数ですが、引数を渡す意味がないのに渡していた引数を削除しました。

クエスト「20-2: クラスの定義と利用」3問目

問題で組み込み関数 round() を利用していましたが、問題の意図と異なるため、問題文を「切り捨て」とし、 int() の利用に変更しました。

解説修正

クエスト「6-2: 辞書を利用した集計」6問目

ネストの解説を追記しました。

クエスト「15-3: ファイルツリー」1問目

問題文に画像を追加し、解説文を修正しました。

クエスト「15-3: ファイルツリー」2問目

1つ目が検索したディレクトリ名 の部分の表現が不明瞭な箇所の修正と加筆を行いました。

修正前

os.walk()はpathで指定されたディレクトリ内のツリー構造を戻します。
戻り値が3値あり、1つ目が検索したディレクトリ名、2つ目が検索したディレクトリ中に存在したディレクトリ一覧のリスト、3つ目がディレクトリ以外のリストです。

修正後

os.walk()はpathで指定されたディレクトリ内のツリー構造を戻します。
指定したディレクトリー(今回は input )を先頭に、その下に存在するディレクトリーを次々に探します。
for文に引数を3つ指定すると、そこに各階層ごとのデータが代入されていきます。
root には、 親ディレクトリの指定ディレクトリからのパス が代入されます。
dirs には、 親ディレクトリに存在する子ディレクトリのリスト が代入されます。
files には、 親ディレクトリに存在するファイルのリスト が代入されます。

1回目: root= 'input' , dirs= ['a', 'b', 'c'] , files= ['x.txt', 'y.txt', 'z.txt']
2回目: root= 'input/a' , dirs= [] , files= ['a_x.txt', 'a_y.txt']
3回目: root= 'input/b' , dirs= [] , files= ['b_y.txt', 'b_z.txt']
4回目: root= 'input/c' , dirs= [], files= ['c_z.txt']

また、はじめて for文 のネストが出てくる箇所でしたので、for文のネスト解説を追記しました。

判定改善

クエスト「20-4: 演習問題」2問目

本日発売分の判定ができていない場合があったので、 is_released() メソッドのテストに本日発売分用の判定を追加しました。

辞書、リストの判定方法修正

辞書、リストをそのまま表示する場合の判定方法で例外が発生してしまう場合がある箇所を修正しました。

  • クエスト「5-2: 辞書の作成、要素の取り出し」3問目、4問目
  • クエスト「5-3: 辞書の値更新」1問目 、2問目
  • クエスト「5-4: 辞書の要素の削除」1問目、2問目 、3問目
  • クエスト「5-6: キーの一覧、値の一覧」1問目 、2問目 、3問目
  • クエスト「5-7: 健康診断結果を扱うプログラムを作成する」2問目
  • クエスト「6-1: 文房具利用状況集計プログラムを写経する」1問目
  • クエスト「6-3: 文房具利用状況集計プログラムを作成」1問目 、2問目
  • クエスト「10-4: 辞書の演習」2問目
  • クエスト「10-8: 集計の演習」1問目 、2問目

誤字脱字

クエスト「14-2: 整数型、 浮動小数点数型」2問目

問題文の誤字を修正しました。 カンマコロン

クエスト「15-4: 演習問題」2問目

問題文の誤字を修正しました。 ファイの中にファイルの中に

クエスト「16-1: ディレクトリー内のファイルを検索するsearch関数を作成しましょう」3問目

問題文の誤字を修正しました。 ファイルファイルファイル

クエスト「17-2: 数値データの並び替え」2問目

問題文の誤字を修正しました。 colmunscolumns

クエスト「20-2: クラスの定義と利用」2問目

問題文の誤字を修正しました。 実態実体

クエスト「20-3: クラスの利用」5問目

問題文中のメソッド名の指定を price_age から price に修正しました。

クエスト「21-4: デコレータ」1問目

問題文中の余計な関数 make_range_list の説明を削除しました。

不要ファイル削除

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

ファイル list_bento_1coin_without_re.py が不要なのにツリーに存在していたので削除しました。