演習2:指定したCSVファイルを読み出してみよう
演習2.1
次のスクリプトは、コマンドラインの引数で与えたCSVファイルを読み込むプログラムです。
code: exercise2.py
import sys
import csv
def readcsv(filepath):
print(f'--- {filepath} ----')
with open(filepath) as f:
data = csv.reader(f)
for row in data:
print(row)
if __name__ == '__main__':
次の仕様を満たすように修正しましょう。(目標時間:15分)
複数のCSVファイルをコマンドラインの引数として与えることができるようにしよう
CSVファイル名が指定されていないときは、使用方法を表示しよう
指定したCSVファイルが存在ないときは、エラーメッセージを表示しよう
"CSVファイル名: No such file or directory"
チャレンジ課題
演習2.2
空のCSVファイルが指定されたときは、次のメッセージを表示しよう
"This is empty CSVfile."
ヒント:1行もなければ...
演習2.3
バイナリーファイルが指定されたときは、次のメッセージを表示しよう
”This is not CSVfile."
ヒント: バイナリモード('rb')でオープンして読みこんだデータにNULL文字(b'\0')があればバイナリファイル
演習2.4
設定ファイル(myconfig.ini) にCSVファイルを検索するディレクトリパスは格納できるようにしてみよう
設定ファイルは現在の作業ディレクトリにあるものします
設定パラメタ searchpath に定義されたディレクトリパスを検索するようにします
searchpath はコロン(:)で区切ると複数のディレクトリパスを定義できるようにします
-c filepath あるいは --confgfile=filepath の形式で設定ファイル指定できるようにしよう