• Насколько хорошо бэкенд-разработчик должен знать SQL?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Ожидаю уверенного владения SQL как минимум в стандарте 2003, а также понимание реляционной теории. Ну и надо понимать, что кандидатов джунского уровня сотня в неделю, чтобы пробиться на место, нужно выделяться среди других, поэтому чем больше знаешь, тем лучше. Покажешь умение читать планы выполнения - плюс, показал владение оконными функциями - ещё плюс, рассказал про WAL при обсуждении транзакций - снова плюс, смог к этому ещё и объяснить про MVCC - совсем молодец. И т.д. и т.п.
    Ответ написан
    Комментировать
  • Как вызвать exception еще раз после его срабатывания?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Зачем так сложно? Делаем цикл по числу попыток, как только получаем успешный результат - делаем break и завершаем цикл досрочно. Можно даже обернуть это в функцию, тогда в основном коде не будет всей этой магии с циклом, код будет выглядеть более наглядным.

    def get_data(Китай, max_attempts=MAX_ATTEMPTS_DEFAULT):
        for attempt in range(1, max_attempts+1):
            try:
                submit = requests.post(Китай).json()
            except requests.exceptions.ConnectionError:
                continue
            if submit['success']:
                return submit
        return {'success':false, 'error':'attempts exceeded'}
    Ответ написан
    Комментировать
  • Скрипт выбивает 2 ошибки,в чем может быть проблема?

    @TuttyFrutti
    IndexError: Cannot choose from an empty sequence
    - нельзя выбрать из пустой последовательности, то есть переменная images пустая => не удалось найти картинки.
    Возможно потому что функция поиска картинок работает на глубину 1, то есть не будет искать в подпапках
    Ответ написан
    Комментировать
  • Не получается переписать код с php на python?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Заголовок X-Sign определён в словаре headers, но вместо него в параметр headers вы почему-то передаёте переменную test.
    Ответ написан
    1 комментарий
  • Почему так популярны телеграм боты?

    Griboks
    @Griboks
    каждый 5-ый вопрос связан с Телеграм-ботом, и каждый 10-ый автор не знает основ языка

    Потому что большинство разработчиков ботов тупые. Как правило они посмотрели 10 видео на ютубе, поверили в себя и пошли во фриланс. На фрилансе заказчики тоже тупые. Вот и получается, что неумеющие гуглить люди заказывают результаты поиска у неумеющих гуглить псевдоразработчиков.
    Ответ написан
    Комментировать
  • Как на Django заполнить таблицу используя manage.py shell?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Эта команда просто запускает интерактивный сеанс Python с инциализированным фреймворком. Так что заполнение таблицы из shell'а возможно всеми теми же миллионами различных способов, как из из обычного питонячьего скрипта.
    Ответ написан
    Комментировать
  • Как сделать инлайн кнопки?

    Vindicar
    @Vindicar
    RTFM!
    Чего ты не можешь понять?
    Каждый вызов row() принимает в параметрах те кнопки, которые должны быть в одном ряду.
    Просто сделай нужное количество вызовов row(), передав каждому те кнопки, которые должны быть в соответствующем ряду.
    btn1 = InlineKeyboardButton(......)
    btn2 = InlineKeyboardButton(......)
    btn3 = InlineKeyboardButton(......)
    ...
    keyboard.row(btn1, btn2)
    keyboard.row(btn3)
    ...
    Ответ написан
    Комментировать
  • Pillow не сохраняет изображение, что делать?

    fenrir1121
    @fenrir1121
    Начни с документации
    Как я понял, она от Disnake
    Нет она от системы, в ошибке большими буквами написано OSError.
    Если пойти еще дальше и сделать невозможное (перевести ошибку), окажется что проблема при открытии, а не сохранении, вероятнее всего на шрифтах.

    бот выдаёт сообщение о том что думает
    Он его выдает только потому что так работает команда await ctx.response.defer()

    В чём моя ошибка?
    В теге discord, в обрезании лога чтобы гадать при ответе, в написании бота прежде чем отдельно напишите и протестируете код.
    Ответ написан
    Комментировать
  • Как сделать диалогового бота?

    fenrir1121
    @fenrir1121
    Начни с документации
    Как это легче всего сделать?

    ибо даже не могу представить алгоритм

    Пройти на фриланс и заплатить. Желательно с более четким и внятным ТЗ

    UPD: после добавления в вопрос кода рекомендую добавить таблицу и словарь с хранением диалоговой пары, чтобы бот знал кому сообщение пересылать. Ну и команду прервать общение
    Ответ написан
    Комментировать
  • Как между асинхроными функциями делиться и перекидывать переменные и их значения?

    Vindicar
    @Vindicar
    RTFM!
    Потому что у каждого пользователя должен быть свой экземпляр хранимых данных.
    Например, вместо одиночного хранилища нужно иметь хранилище вида "ключ-значение", где ключом будет ID пользователя, а значением - данные, которые для этого пользователя актуальны.
    Природа этого хранилища не принципиальна: может быть простой словарь (если не нужно сохранение состоятния между перезапусками бота), может быть БД, может быть ещё что.

    Собственно, в аиограме есть механизм Finite State Machine, который как раз про организацию сценариев, с отслеживанием того, на каком этапе находится конкретный пользователь.

    Но для его использования нужно знать питон на уровне немножечко повыше "Если я пытаюсь исплользовать return то код дальше становится недоступным".
    Ответ написан
    Комментировать
  • Какое основное преимущество генераторов над итераторами?

    AgentSmith
    @AgentSmith
    Это мой правильный ответ на твой вопрос
    У генераторов ленивая инициализация, lazy. А преимущество это или недостаток, решается в каждой конкретной задаче
    Ответ написан
    Комментировать
  • Телеграм Бот Python. Кнопки и переменные?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Телеграм Бот Python. Кнопки и переменные?
    Нет!
    Ответ написан
    3 комментария
  • Принял оффер, завтра выходить на работу, но хочу отказаться - внесут ли в black list?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Единого чёрного списка на всю финансовую отрасль нет, но вот в этот банк вероятно станет тяжелее устроиться в дальнейшем.
    Ответ написан
    Комментировать
  • Как пользоваться модулем time?

    Dr_Elvis
    @Dr_Elvis Куратор тега Python
    В гугле забанен
    time.sleep(10)
    Но если вы и этого не смогли понять когда читали в книгах и в интернете, я даже тогда не знаю....
    Ответ написан
    Комментировать
  • Как работать с конструкцией try except?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Сделайте ещё один вложенный цикл для попыток обработки каждого из элементов. Можно при успешном выполнении без ошибок выходить из внутреннего цикла досрочно, а при ошибке не выходить досрочно и цикл будет повторять попытки.
    Если бы у вас было побольше опыта программирования на питоне, я бы посоветовал бы вам вынести обработку одного элемента в отдельную функцию, а еще посоветовал бы поупражняться в написании декоратора `retry`, который будет оборачивать любую функцию в новую функцию и в случае ошибки повторять её запуск пока не будет исчерпан лимит попыток.
    По-моему такой пример или упражнение, кстати, и было в одной из книг Лутца. Но вам подойдёт практически любая, где рассматриваются основы языка.
    Ответ написан
    2 комментария
  • Бьет ошибку в линии 11,в чем проблема?

    Vindicar
    @Vindicar
    RTFM!
    @bot.message_handler(commands=['start'])
    def start(message):
         markup = types.ReplyKeyboardMarkup(resize_keyboard= True,)
    item1 = types.KeyboardButton('Клик')
    markup.add(item1)
    bot.send_message(message.chat.id, f'Привет, {message.from_user. first_name}!', reply_markup=markup)

    Всё, что после markup = ..., уже не является частью функции startup(), так как отступ неверный. Учи Питон.
    Ответ написан
    Комментировать
  • Как оптимизировать ответ api сократив количество возвращаемых полей?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    А вы разрабатываете серверную или клиентскую часть?
    Если клиентскую, то ответ на ваш вопрос в документации к АПИ. Если ответа нет, значит и возможности такой нет.
    Если серверную, то предусмотрите соответствующие параметры в клиентском запросе и возвращайте ответ в соответствии с ними.
    Ответ написан
    3 комментария
  • При попытке решить задачу на тему Логические операции, операции сравнения, PyCharm не выводит в ответе True либо False?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    С чего вы взяли, что должен? В коде не происходит вывод.
    Ответ написан
    Комментировать
  • Кто такие инженеры 2 категории?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    То, что написал в их должностной инструкции конкретный работодатель. Единого определения и перечня обязанностей для этой должности нет.
    Ответ написан
    Комментировать