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


13

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


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

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


Просто чтобы указать, что Int('a')предложенное здесь в точности эквивалентно Int(codepoint('a')), а также короче.
Джордано
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.