Spaces:
Running
Running
# 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() |