В Python 2.x просто используйте функции ord
и chr
:
>>> ord('c')
99
>>> ord('c') + 1
100
>>> chr(ord('c') + 1)
'd'
>>>
Python 3.x делает это более организованным и интересным из-за его четкого различия между байтами и юникодом. По умолчанию в качестве «строки» используется Unicode, поэтому вышеприведенное работает (ord
получает символы Unicode, а chr
создает их).
Но если вам интересны байты (например, для обработки некоторого потока двоичных данных), все еще проще:
>>> bstr = b'abc'
>>> bstr[0]
97
>>> bytes([97, 98, 99])
b'abc'
>>> bytes([bstr[0] + 1, 98, 99])
b'bbc'