Почему возникает ошибка “int() can't convert non-string with explicit base”? — Q&A Хекслет
2026-02-26 22:48 Diff

Ошибка появляется, когда функция int() вызывается с основанием системы счисления (вторым аргументом), но первый аргумент при этом не является строкой.

Формат вызова выглядит так:

Если указан base, то value должен быть строкой, а не числом или другим типом. Например:

Поэтому при передаче нестрокового аргумента появляется ошибка: функция не может интерпретировать его как число в заданной системе счисления. После преобразования аргументов a и b в строки вызов становится валидным, и ошибка исчезает.