¿Cómo encuentras el valor unicode de un personaje en Julia?


13

Estoy buscando algo como Python ord(char)para Julia que devuelve un número entero.


14
@Asadefa Está bien, pero esa pregunta se ha hecho, respondido y archivado muchas veces para los idiomas más antiguos y populares. Esta es Julia (8 años), no C (48 años) o C ++ (35 años). Tengo dificultades para entender por qué se publicó este comentario.
Xevion

Respuestas:


14

Creo que lo estás buscando codepoint. De la documentación:

codepoint(c::AbstractChar) -> Integer

Devuelve el punto de código Unicode (un entero sin signo) correspondiente al carácter c(o lanza una excepción si c no representa un carácter válido). Para Char, este es un UInt32valor, pero los AbstractChartipos que representan solo un subconjunto de Unicode pueden devolver un número entero de diferente tamaño (por ejemplo UInt8).

Por ejemplo:

julia> codepoint('a')
0x00000061

Para obtener el equivalente exacto de la ordfunción de Python , es posible que desee convertir el resultado a un entero con signo:

julia> Int(codepoint('a'))
97

6

También puedes simplemente hacer:

julia> Int('a')
97

Si tienes una cadena:

julia> s="hello";

julia> Int(s[1])
104

julia> Int(s[2])
101

julia> Int(s[5])
111

Más detalles aquí .


Solo para señalar que lo Int('a')sugerido aquí es exactamente equivalente a Int(codepoint('a')), y también más corto.
giordano
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.