def check_events(ship, settings, screen, bullets):
"""main event checker function"""
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
elif event.type == pygame.KEYDOWN:
# working on keydown events
check_keydown_events(event, ship, settings, screen, bullets)
# function that checks keydown event type and works according event type
elif event.type == pygame.KEYUP:
check_keyup_events(event, ship)
# function that checks keyup event type and works according event type
print(len(bullets)) # to check amount of bullets on screen
if ship.fire and len(bullets) < settings.bullets_allowed:
if time.time() - ship.last_fire > 0.3: # задержка 0.3 с
# continues firing until amount of bullets reaches limit
new_bullet = Bullet(settings, ship, screen) # creating new bullet
bullets.add(new_bullet) # adding created bullet to Group
ship.last_fire = time.time()
записывается в таблицу 'Музыка'
id_ - Это количество строк, всё остальное это уроки в которые записывается дз.
For_lessons = ['алгебра', 'геометрия'] # прописать все свои поля
For_lessons_bind = ','.join('?'*len(For_lessons)) # формируем строку подстановок для данных
CVB = '5,3' # это та самая строка данных по предметам
data = CVB.split(',')
# формируем список обновления полей по предметам
For_lessons_update = ','.join(f"{lesson} = excluded.{lesson}" for lesson in For_lessons)
# и запрос на вставку. пытается вставить с id_=1, если уже есть, то обновляет данные (update)
c.execute(f"insert into Home_work (id_, {','.join(For_lessons)}) values(?, {For_lessons_bind}) on conflict(id_) do update set {For_lessons_update}", [1]+data)
G - список с кортежем в котором содержится другой список с записанным уроком в определённом месте.
For_lessons = ['алгебра', 'геометрия']
For_lessons_bind = ','.join('?'*len(For_lessons)) # формируем строку подстановок значений
CVB = '5,3'
data = CVB.split(',')
c.execute(f"insert into home_work ({','.join(For_lessons)}) values({For_lessons_bind})", data)
И как я запишу список для того что бы появились записи в столбцах?
INSERT INTO Home_work (Алгебра, .... ) VALUES(?, ....) ON CONFLICT(id) DO UPDATE
SET Алгебра = excluded.Алгебра,
Геометрия = excluded.Геометрия,
...