Пути Сбера неисповедимы... Мне всего два раза пришлось подтверждать платёж через КЦ, причём один из них был обычной ежемесячной оплатой МГТС, что довольно неожиданно. При этом я не раз свободно делал карточные (даже не внутрибанковские) переводы на десятки тысяч.
13_nastya_13, тогда стадии распознавания прямоугольников не избежать. Можно разве что подумать над тем, чтобы в процессе этой операции сразу накапливать данные о попарном порядке при пересечениях.
13_nastya_13, а, в смысле порядок по тому чей цвет в точках пересечений?
Ну как вариант для каждого прямоугольника найти все, которые он пересекает, с порядком между ними. Получится неполное (определённое не для всех, а только для пересекающихся) отношение порядка r1 < r2, где r2 "выше" r1. Далее можно отсортировать по этому отношению порядка, дополнив недостающие пары любым образом (хоть даже по координате левого верхнего угла сравнивать непересекающиеся, или даже рандомно назначить порядок). Но интереснее рассматривать результат такого отношения как дерево, где надо пройти от листьев к корню (или к нескольким корням.
Как вообще заданы прямоугольники в исходной задаче? Пиксельная картинка?
По ГОСТ (ЕСПД) оформляют документацию не тогда, когда нужно решить какие-то пользовательские и программистские задачи, а когда есть бюрократические требования. Например, в госзаказе.
Надо понимать, что ЕСПД в своей основе напоминают требования к стандартизации конструкторской документации (ЕСКД). Но если конструкторская документация действительно требует какого-то единообразия, то ЕСПД выглядит больше как требования ради требований. Какой смысл тратить время на эти телодвижения в конторах с крайне ограниченными человекоресурсами?
Andrey Dugin, про то, что теперь порядок в dict стал предсказуемый, я не знал, интересно, запомню. Но я, в принципе, программист ненастоящий, я на самом деле сисадмин.
EVOSandru6, я бы лучше отказался от WhatsApp и перешёл на использование намного более функционального в части автоматизаций и интеграций Telegram. Или Discord. Какой смысл забивать шурупы молотком, то есть не предназначенным для этого инструментом?
Можно, конечно, общаться с ботом и копировать в начало сообщений ник пишущего. Но выглядеть это будет так себе...
Зачем? Модуль sqlite3 входит в штатную поставку python. Ставить его вручную нужно только в исключительных случаях. У меня такой случай был: django 3 не признавал чуть-чуть старый sqlite3, который есть штатно в Centos 7 с python 3.6, пришлось исхитряться.
EVOSandru6, использование WhatsApp Web в качестве API фейсбуку не очень нравится, и он иногда даже пытается с этим бороться. Поэтому нет ничего удивительного, что поставщики подобных решений в их каталоге отсутствуют.
Что касается официального API, в нём раньше были функции для управления группами (создавать новые, добавлять людей и всё такое), но их теперь выпилили, теперь там возможно только общение тет-а-тет с ботом и рассылка уведомлений по одобренным шаблонам.
В чём вообще задача? Саппортить обращающихся пользователей? Колл^Wчат-центры сейчас пилят все кому не лень, поддерживают и чатики на сайте, и обращения через телеграмного бота, ну и в WhatsApp тоже. Или для чего вообще вся эта затея?
polling - это, собственно, цикл работы программы, при котором всё остальное вызывается как обработчики событий на полученные от longpoll-запросов данные. Так что неудивительно, что нельзя во время его работы ничего делать.
Можно использовать треды; можно сделать нужный message.send перед началом polling, а всё дальнейшее уже в обработчиках событий; можно использовать asyncio; можно вместо цикла long poll делать единичными запросами, а между ними выполнять другие действия. В общем, варианты есть. Но в целом я бы начал с того, чтобы подумал об изменении задачи. Например, если надо тестировать взаимодействие пользователя с ботом, то не проще ли логику действий пользователя и сам бот реализовать отдельными скриптами?
Elvis, я в своё время очень нервничал, когда после многих лет общения с mysql начал использовать postgresql и столкнулся с неработой таких уже почти казалось бы очевидных мелочей.
А что тут неверного? Мы извлекаем users из таблицы st, прибавляем 1, изменяем users в таблице st на полученное значение и извлекаем его ещё раз. Было 0, стало 1, всё верно выводится.
Сергей Матковский, но если в канал никто не пишет (и on_message не вызывается), то вызова input не случится. Так что наверное не самое удачное решение, хотя для конкретной задачи может и сойдёт.