作业
Topic sourceimport os
import sqlite3
def init_file():
db_file = os.path.join(os.path.dirname(__file__), 'test.db')
if os.path.exists(db_file):
os.remove(db_file)
def init_db():
connect = sqlite3.connect('test.db')
cursor = connect.cursor()
try:
cursor.execute('create table user(id varchar(20) primary key, name varchar(20), score int)')
cursor.execute(r"insert into user values ('A-001', 'Adam', 95)")
cursor.execute(r"insert into user values ('A-002', 'Bart', 62)")
cursor.execute(r"insert into user values ('A-003', 'Lisa', 78)")
finally:
cursor.close()
connect.commit()
connect.close()
def get_score_in(low, high):
connect = sqlite3.connect('test.db')
cursor = connect.cursor()
try:
cursor.execute('select * from user ')
values = cursor.fetchall()
temps = list()
for id, name, score in values:
if low <= score <= high:
temps.append([name, score])
temps.sort(key=lambda x: x[1], reverse=False)
return [k for k, y in temps]
finally:
cursor.close()
connect.close()
if __name__ == '__main__':
init_file()
init_db()
assert get_score_in(80, 95) == ['Adam'], get_score_in(80, 95)
assert get_score_in(60, 80) == ['Bart', 'Lisa'], get_score_in(60, 80)
assert get_score_in(60, 100) == ['Bart', 'Lisa', 'Adam'], get_score_in(60, 100)
print('Pass')
- 1
用户7098521620