Python 2.x имеет chr(), который преобразует число в диапазоне 0-255 в строку байта с одним символом с этим числовым значением и unichr(), который преобразует число в диапазоне 0-0x10FFFF в строка Unicode с одним символом с кодовым номером Unicode. Python 3.x заменяет unichr() на chr(), в соответствии со своей политикой "Unicode strings is default", но я не могу найти ничего, что бы точно делало старое chr(). Утилита 2to3 (от версии 2.6) оставляет только chr вызовы, что не является правильным вообще: (
(Это для синтаксического анализа и сериализации формата файла, который явно определен в терминах 8-битных байтов.)