Table of Contents |
提出場所: この授業のMoodleコース の ex04A
注意
notebook のセルを実行していると,たまにセルの番号のところが [*] となったままで反応が返ってこなくなるときがあります. ありがちな状況と対処法を書いときます
- 単に処理に時間がかかってるだけ → 待てばいい
- input( ) が入力待ってる → 入力欄になんか入力して Enter
- いつまで待ってもだめ → ウィンドウ上部の「■」ボタンを押して,そのセルの実行を強制的に停止させる
#### AProg2020 第4回課題B ### 関数 readZIP() の定義 # 中身は一部知らないこともあるので,現時点では眺めてふーんって感じでよい def readZIP(fn): dZIP = {} # 空のディクショナリを作る # macOS のひとは,以下の「encoding="utf-8"」の部分はなくて ok with open(fn, "r", encoding="utf-8") as f: # ファイル名 fn のファイルを読み込みモードで開く for line in f: # ファイルから1行ずつ読み込んでループ x, y = line.split() # 空白区切りで分割.1つ目を x に,残り(2つ目)を y に dZIP[x] = y # キー x, 値 y のペアを登録.x, y とも文字列 return dZIP # 引数にファイル名を指定して readZIP() を呼ぶ # 何を引数に指定するかは自分で考えよう.戻り値は郵便番号データのディクショナリ zip = readZIP( ) # ディクショナリに対する len() は,キーの数を返す print(len(zip), "件の郵便番号データを読み込みました")
118014 件の郵便番号データを読み込みました 郵便番号を入力してください('q'か'Q'で終了) 1057219 1057219 東京都港区東新橋汐留メディアタワー(19階) 郵便番号を入力してください('q'か'Q'で終了) 1057220 1057220 東京都港区東新橋汐留メディアタワー(20階) 郵便番号を入力してください('q'か'Q'で終了) 0010010 0010010 北海道札幌市北区北十条西(1〜4丁目) 郵便番号を入力してください('q'か'Q'で終了) 9998525 9998525 山形県飽海郡遊佐町直世 郵便番号を入力してください('q'か'Q'で終了) 5202123 5202123 滋賀県大津市瀬田大江町 郵便番号を入力してください('q'か'Q'で終了) 1234567 見つかりません 郵便番号を入力してください('q'か'Q'で終了) q
提出場所: この授業のMoodleコース の ex04B
これはおまけ課題です.やらなくても減点はありません.やったら棒茄子?
この課題のねらい: