добавлял оценку в существующую строчку
mySQLQuery = (f'''update dbo.rating set `{subject}` = {appr} where id = '{your_id}')''')
mySQLQuery = f'''update dbo.rating set `{subject}` = %s where id = %s'''
cursor.execute(mySQLQuery, (appr, your_id))
def dirReduc(arr):
dirs = {"NORTH": "SOUTH", "SOUTH": "NORTH", "EAST": "WEST", "WEST": "EAST"}
stack = []
for d in arr:
if stack and dirs[d] == stack[-1]:
stack.pop()
else:
stack.append(d)
return stack
иногда еле-ели вертится!)
bmp_дерево_rot = pygame.transform.rotate(bmp_дерево, rotate(bmp_image))
bmp_image = bmp_дерево_rot.get_rect(center=(150, 700))
sc.blit(bmp_дерево_rot, bmp_image)
def rotate(oject2):
mouse_x, mouse_y = pygame.mouse.get_pos()
x, y = bmp_image.center
rel_x, rel_y = mouse_x - x, mouse_y - y
angle = (180 / math.pi) * -math.atan2(rel_y, rel_x)
return angle
, "Похудел" "Нет",
ids = {result['id'] for result in data['result']}
print(ids)
{'8da31f62a40a2eb3973c9df3', '60831f62a40a2eb3973c9df3'}
{'8da31f62a40a2eb3973c9df3', '60831f62a40a2eb3973c9df3', '60831f62a40a2eb3973c9df5'}
diff_ids = new_ids - ids
news = [result for result in new_data['result'] if result['id'] in diff_ids]
@bot.messege_handler(content_types=['text'])
@bot.handler_backends(content_types=['text'])
@bot.message_handler(content_types=['text'])
Board.mark_destroyed_ship(sh)
self.mark_destroyed_ship(sh)
CREATE TABLE IF NOT EXISTS post_likes (
id integer primary key,
post_id integer, -- id поста
user_id integer, -- id пользователя
likes integer
);
select sum(likes) total_score, -- общий счет
sum(case likes when 1 then 1 end) sum_likes, -- кол-во лайков
sum(case likes when -1 then 1 end) sum_dislikes -- кол-во дизлайков
from post_likes where post_id = нужный_id_поста
bot.register_next_step_handler(sent, audio_description, audio)
...
def audio_description(message, audio):
data = [{'DOC_NUM': None, 'DOC_ORG': '0', 'GROUP_NUM': '987564', 'BOX_TYPE': '9999999 ', 'D_NUM': 'Номер города', 'BOX_NUM': '12345679', 'ADR': 'Огнева'}]
# сформировать список колонок и привязки параметров (по ":")
columns = ", ".join(data[0].keys())
bindings = ", ".join((f":{key}" for key in data[0].keys()))
sql = "insert into my_table ({}) values ({})".format(columns, bindings)
print(sql)
# должен получиться такой запрос
# insert into my_table (DOC_NUM, DOC_ORG, GROUP_NUM, BOX_TYPE, D_NUM, BOX_NUM, ADR) values (:DOC_NUM, :DOC_ORG, :GROUP_NUM, :BOX_TYPE, :D_NUM, :BOX_NUM, :ADR)
#который потом примет словарь данных напрямую (или просто execute, если нужна только одна первая строка data[0]
cur.executemany(sql, data)
# принимаем как текст нового абзаца, так и список ответов
def select(fable, answers):
print(fable)
print('\n'.join(answers))
while True:
# можно добавить проверку ввода букв вместо цифр
answer = int(input())
# т.к. мы знаем кол-во вариантов ответов, то сразу можем проверить валидность
# аналогично можно добавить и другие проверки
if answer > len(answers):
print('Неверный ответ, будь внимательнее')
else:
break
# возвращаем результат ответа, не нужны глобалы
return answer
# и в основной программе соответственно разделяем текст и ответы
fable = "Жили-были старик со старухой. Вот и просит старик\n - Испеки мне, старая, колобок.\n - Да из чего испечь-то? муки нет.\nЧто ответит дед?(выберите цифру ответа):"
# при желании из текста ответа можно и удалить жестко прописанные номера.
# т.к. это у нас список, то мы ведь их можем сгенерировать налету перед печатью
answers = ["Ты по амбару подмети, по сусекам поскреби - вот и наберёшь муки (1) ", "Ну ладно, свари мне тогда каши (2) ", "Ладно, пойду на базар, куплю муки, тогда и испечёшь (3) "]
# и собственно запускаем опрос по первому абзацу
answer = select(fable, answers)
# полученный номер ответа уже используем в дальнейшей проверке
if answer == 1:
# аналогично формируем запрос по следующему абзацу, и т.д.
Но хотелось бы как-то отсортировать это по cash и уже получить rowid .
SELECT id, name, cash, row_number() over(order by cash desc) as rownum FROM users
cursor.execute("SELECT cash, rowid, rownum FROM (SELECT id, name, cash, row_number() over(order by cash desc) as rownum FROM users) WHERE id = ?", (ctx.author.id, )).fetchone()[2]
# coding:utf-8
# coding:windows-1251
frame.to_csv('1.csv', mode='a', header=False)
if command("prn") == key:
if command("prn") in vars:
for i in key: