parse_py / database.py
broadfield-dev's picture
Create database.py
2017cb6 verified
raw
history blame
1.19 kB
# database.py
import sqlite3
import os
from parser import parse_python_code
def init_db():
conn = sqlite3.connect('python_programs.db')
c = conn.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS programs
(id INTEGER PRIMARY KEY, code TEXT, sequence TEXT, vectors TEXT)''')
conn.commit()
conn.close()
def store_program(code, sequence, vectors):
conn = sqlite3.connect('python_programs.db')
c = conn.cursor()
c.execute("INSERT INTO programs (code, sequence, vectors) VALUES (?, ?, ?)",
(code, ','.join(sequence), str(vectors)))
conn.commit()
conn.close()
def populate_sample_db():
# Sample programs for testing
samples = [
"""
import os
def add_one(x):
y = x + 1
return y
""",
"""
def multiply(a, b):
c = a * b
if c > 0:
return c
"""
]
for code in samples:
parts, sequence = parse_python_code(code)
vectors = [part['vector'] for part in parts]
store_program(code, sequence, vectors)
if __name__ == '__main__':
init_db()
populate_sample_db()