Skip to content

Instantly share code, notes, and snippets.

@arwer13
Created July 9, 2016 15:44
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save arwer13/587368d6d7878768c2adbd165772a4f1 to your computer and use it in GitHub Desktop.
Save arwer13/587368d6d7878768c2adbd165772a4f1 to your computer and use it in GitHub Desktop.
import sqlite3
def dict_factory(cursor, row):
d = {}
for idx, col in enumerate(cursor.description):
d[col[0]] = row[idx]
return d
db = sqlite3.connect("databases/japanese.db")
db.row_factory = dict_factory
def get_char_info(char, db):
cur = db.cursor()
query = "SELECT * FROM kanji INNER JOIN kanji_meanings ON kanji.kanji=kanji_meanings.kanji WHERE kanji.kanji=?"
cur.execute(query, [char])
result = cur.fetchone()
query = "SELECT * FROM lemmas WHERE lemma LIKE ? ORDER BY frequency DESC"
cur.execute(query, ['%{}%'.format(x) for x in [char]])
result['lemmas'] = list(cur)
cur.close()
return result
_ = get_char_info("田", db)
print(_)
db.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment