Как вы находите значение Юникода для персонажа в Юлии?

13

Я ищу что-то вроде Python ord(char)для Джулии, которое возвращает целое число.

vboreda514
источник
14
@Asadefa Хорошо, но этот вопрос задавался, отвечался и архивировался много раз для старых, более популярных языков. Это Юлия (8 лет), а не С (48 лет) или С ++ (35 лет). Мне трудно понять, почему этот комментарий был опубликован.
Ксевион

Ответы:

14

Я думаю, что вы ищете codepoint. Из документации:

codepoint(c::AbstractChar) -> Integer

Вернуть кодовую точку Unicode (целое число без знака), соответствующее символу c(или сгенерировать исключение, если c не представляет допустимый символ). Ибо Charэто UInt32значение, но AbstractCharтипы, которые представляют только подмножество Unicode, могут возвращать целое число другого размера (например, UInt8).

Например:

julia> codepoint('a')
0x00000061

Чтобы получить точный эквивалент функции Python ord, вы можете преобразовать результат в целое число со знаком:

julia> Int(codepoint('a'))
97
Франсуа Февотт
источник
6

Вы также можете просто сделать:

julia> Int('a')
97

Если у вас есть строка:

julia> s="hello";

julia> Int(s[1])
104

julia> Int(s[2])
101

julia> Int(s[5])
111

Подробнее здесь .

4lrdyD
источник
Просто чтобы указать, что Int('a')предложенное здесь в точности эквивалентно Int(codepoint('a')), а также короче.
Джордано