См.п.3.8 - код надо публиковать в самом вопросе либо на таком ресурсе, чтобы он публиковался в вопросе как читаемый код. Ссылки на код крайне не приветствуются (п.5.7).
Покажите свою попытку решения проблемы и что получилось. В противном случае вопрос может быть удалён модератором за нарушение правила 5.12 (это не вопрос, а задание).
Frik4455, настоятельно рекомендую привести свои попытки решить проблему. Тут помогают, если человек пытается сам решить. За вас код пишут на другом сервисе.
Artyom Test, хорошо. Тогда надо убрать всю лишнюю логику, все лишние сравнения, лишние переменные, убрать генерацию случайных чисел, преобразовать строку пароля в число и тупо перебирать числа в range, пока одно не подойдёт.
Arahis3000, надо посмотреть, какой тип передается в параметр city_id когда вызывается функция.
sqlite принимает только определённые типы, а именно None, int, float, str, bytes и ещё datetime.
Если передается объект другого типа (например, список), вернётся ошибка.