Скажем, у меня есть набор шестнадцатеричных чисел, которые я печатаю на python, например, адреса для целей отладки, и я хочу иметь возможность сравнивать их визуально. Большим подспорьем для этого было бы сгруппировать цифры аналогично тому, как мы используем разделители тысяч для десятичных чисел.
Это также причина, по которой при шестнадцатеричном кодировании цифры группируются по 4, а не в виде длинных строк шестнадцатеричных символов.
Не читается: 47167689711616
Едва читаемый: 2ae61563e000
Наполовину читаемый: 47 167 689 711 616
Наиболее читаемые: 2ae6,1563, e000
Меня не волнует, что такое разделитель, если группировка состоит из 2, 3 или 4 цифр. Тем не менее, опция группировки не работает:
>>> '{:x}'.format(47167689711616)
'2ae61563e000'
>>> '{:,x}'.format(47167689711616)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: Cannot specify ',' with 'x'.
Машина, которую я использую (и где я не являюсь администратором), имеет только python 3.4 .