Python. char как в С/С++

146
28 апреля 2019, 17:10

в с++ машина видит char как целочисленный тип и можно просто брать и делать так:

string str ..что то..
char t = str[i] - 'a'

И тому подобное
Но, как сделать подобное в python? Ведь при приведении строки к инту, оно выдаст ошибку если это не число. А типа сhar в python нет насколько я знаю.

Answer 1

Функция ord даёт численное значение символа, если нужна какая-то арифметика

>> chr(ord('x') + 1)
'y'

function ord() would get the int value of the char. And in case you want to convert back after playing with the number, function chr() does the trick.

Answer 2

char тип представляет байт в Си. В Питоне, набор байт может быть представлен bytes типом. В Питоне 3:

>>> b'abc'
b'abc'
>>> b'abc'[0]
97

то есть байт уже возвращается как число (int) и его не нужно преобразовывать.

READ ALSO
Захват глобальных переменных лямбдой

Захват глобальных переменных лямбдой

Как правильно захватывать глобальные переменные в лямбде? Хочу использовать следующим образом, но выдаются предупрежденияКак их подавить?

111
Включить все заголовочные файлы

Включить все заголовочные файлы

Можно ли как-то включить в maincpp все возможные заголовочные файлы языка, чтобы каждый раз не думать, что подключать? Может есть специальный...

164
Чем отличаются функции move и forward?

Чем отличаются функции move и forward?

С функцией move вроде бы всё понятно: она приводит любую ссылку на объект к неконстантной rvalue-ссылке, которая в соответствующем контексте передастся...

138
Удаление елементов из QListWidget

Удаление елементов из QListWidget

Доброго времени суток

128