ロトくじCSVファイルを読み込む関数を書く。
パッケージの最上位ディレクトリにdataというディレクトリを作成し、その中に当たり数字データのCSVファイルを格納することにする。
■抽選番号データ
CSVファイル | 関連記事 |
---|---|
ロト7 CSVファイル | ロト7抽選番号のCSVファイルを作成する |
ロト6 CSVファイル | ロト6抽選番号のCSVファイルを作成する |
ミニロト CSVファイル | ミニロト抽選番号のCSVファイルを作成する |
まず、それぞれのCSVファイルを読み込む関数を書く。
宝くじ毎にCSVデータの必要なカラムが違うだけなのだが、関数をひとつにまとめるうまい方法が見つからなかったので、愚直に3個の関数を書いた。
(ファイル名) read_miniloto.py
import os, csv from loto_basic import LotoBasic def read_miniloto(): csv_file = os.path.dirname(os.path.abspath(__file__)) + '/data/miniloto.csv' miniloto_data = [] with open(csv_file, 'rt') as fin: reader = csv.reader(fin) for num, row in enumerate(reader): if num == 0: continue miniloto = LotoBasic(row[0],\ [int(row[2]), int(row[3]), int(row[4]),\ int(row[5]), int(row[6])], [int(row[7])],\ [int(row[8]), int(row[9]), int(row[10]), int(row[11])],\ [int(row[12]), int(row[13]), int(row[14]), int(row[15])]) miniloto_data.insert(0, miniloto) return miniloto_data if __name__ == '__main__': data = read_miniloto() for i in data: print(i)
(ファイル名) read_loto6.py
import os, csv from loto_basic import LotoBasic def read_loto6(): csv_file = os.path.dirname(os.path.abspath(__file__)) + '/data/loto6.csv' loto6_data = [] with open(csv_file, 'rt') as fin: reader = csv.reader(fin) for num, row in enumerate(reader): if num == 0: continue loto6 = LotoBasic(row[0],\ [int(row[2]), int(row[3]), int(row[4]),\ int(row[5]), int(row[6]), int(row[7])],\ [int(row[8])],\ [int(row[9]), int(row[10]), int(row[11]), int(row[12]), int(row[13])],\ [int(row[14]), int(row[15]), int(row[16]), int(row[17]), int(row[18])], int(row[19]) ) loto6_data.insert(0, loto6) return loto6_data if __name__ == '__main__': data = read_loto6() for i in data: print(i)
(ファイル名) read_loto7.py
import os, csv from loto_basic import LotoBasic def read_loto7(): csv_file = os.path.dirname(os.path.abspath(__file__)) + '/data/loto7.csv' loto7_data = [] with open(csv_file, 'rt') as fin: reader = csv.reader(fin) for num, row in enumerate(reader): if num == 0: continue loto7 = LotoBasic(row[0],\ [int(row[2]), int(row[3]), int(row[4]),\ int(row[5]), int(row[6]), int(row[7]), int(row[8])],\ [int(row[9]), int(row[10])],\ [int(row[11]), int(row[12]), int(row[13]), int(row[14]), int(row[15]), int(row[16])],\ [int(row[17]), int(row[18]), int(row[19]), int(row[20]), int(row[21]), int(row[22])], int(row[17]) ) loto7_data.insert(0, loto7) return loto7_data if __name__ == '__main__': data = read_loto7() for i in data: print(i)
ファイルの階層構造は以下の通り。
lotonumber ├── data │ ├── loto6.csv │ ├── loto7.csv │ └── miniloto.csv ├── loto.py ├── loto_basic.py ├── read_loto6.py ├── read_loto7.py └── read_miniloto.py
これらの関数を引っさげ、次回はロトくじデータを取得するクラスを書く。