ついに変形。
成果物
コード
import csv import sys def _csv_files(): # 用言(動詞、形容詞、助動詞) return ('Verb.utf8.csv', 'Adj.utf8.csv', 'Auxil.utf8.csv') def _show_help(): import os this_file_name = os.path.basename(__file__) doc = '''\ 概要 : 入力した用言(基本形)の入力した活用形を返す。 使い方 : 第1引数に用言の基本形, 第2引数に活用形名を入力する。 コマンド書式: python3 {0} 用言(基本形) 活用形名" コマンド例 : python3 {0} '動く' '未然形'" コマンド例 : python3 {0} '美しい' '未然ウ接続'" コマンド例 : python3 {0} '如し' '体言接続'" 必要なもの : 辞書ファイル {1}\ '''.format(this_file_name, _csv_files()) print(doc) # 入力した用言(基本形)の入力した活用形を返す def get_conjugation_word(): if 3 > len(sys.argv): _show_help() sys.exit() res = _read_csv(sys.argv[1], sys.argv[2]) if 0 < len(res): print(res) # 入力した基本形に一致するレコードの活用形を返す def _read_csv(word, conj): for filename in _csv_files(): reader = csv.reader(open(filename, "r", encoding="utf-8")) for row in reader: if word == row[10] and conj == row[9]: return row[0] return '' if __name__ == '__main__': get_conjugation_word()
- 実行パスに辞書ファイルが存在すること
- 以前作成したヤツ
実行
動詞。
python3 ./get_conj_word.py '動く' '未然形'
動か
形容詞。
python3 ./get_conj_word.py '美しい' '未然ウ接続'
美しかろ
助動詞。
python3 ./get_conj_word.py '如し' '体言接続'
如き
所感
CSVの構造さえわかっていれば簡単。
ところでこれ、応答に2秒くらいかかる。もしSQLite3にデータを移行したらどっちが速いのだろうか。面倒だからやらんけど。
前回のと組み合わせれば、活用形を網羅できる。
対象環境
- Raspbierry pi 3 Model B+
- Raspbian stretch 9.0 2018-11-13 ※
- bash 4.4.12(1)-release ※
- Python 3.5.3
- SQLite 3.29.0 ※
- MeCab 0.996ユーザ辞書
$ uname -a Linux raspberrypi 4.19.42-v7+ #1218 SMP Tue May 14 00:48:17 BST 2019 armv7l GNU/Linux