При итерации через bytes мы получаем значения в десятичной системе счисления, которые соответствуют кодам ASCII символов.
В ASCII таблице символ с кодом 62 (0x3e в шестнадцатеричной системе) соответствует символу ">", а символ с кодом 95 (0x5f в шестнадцатеричной системе) соответствует символу "_".
Вычисление шестнадцатеричного числа вручную с использованием модуля 16 и деления на 16 будет давать нам остаток от деления (цифры от 0 до 15), а не значение кода ASCII символов. Таким образом, при вычислении шестнадцатеричного числа вручную мы не получаем значения символов ">", "_", а получаем значения цифр в шестнадцатеричном представлении числа.
Итерирование через bytes используется для получения байтового представления строки (или других последовательностей байтов), тогда как вычисление шестнадцатеричного числа вручную выполняет математическую операцию над числами.