Jak znaleźć wartość Unicode postaci w Julii?

13

Szukam czegoś takiego jak Python ord(char)dla Julii, która zwraca liczbę całkowitą.

vboreda514
źródło
14
@Asadefa Dobra, ale to pytanie zostało zadane, udzielone i zarchiwizowane wiele razy dla starszych, bardziej popularnych języków. To jest Julia (8 lat), a nie C (48 lat) lub C ++ (35 lat). Mam problem ze zrozumieniem, dlaczego opublikowano ten komentarz.
Xevion

Odpowiedzi:

14

Myślę, że szukasz codepoint. Z dokumentacji:

codepoint(c::AbstractChar) -> Integer

Zwraca kod Unicode (liczbę całkowitą bez znaku) odpowiadającą znakowi c(lub zgłasza wyjątek, jeśli c nie reprezentuje poprawnego znaku). W przypadku Char, jest to UInt32wartość, ale AbstractChartypy, które stanowią tylko część Unicode może powrócić do różnej wielkości (na przykład liczbę całkowitą UInt8).

Na przykład:

julia> codepoint('a')
0x00000061

Aby uzyskać dokładny odpowiednik funkcji Pythona ord, możesz przekonwertować wynik na liczbę całkowitą ze znakiem:

julia> Int(codepoint('a'))
97
François Févotte
źródło
6

Możesz także po prostu:

julia> Int('a')
97

Jeśli masz ciąg znaków:

julia> s="hello";

julia> Int(s[1])
104

julia> Int(s[2])
101

julia> Int(s[5])
111

Więcej informacji tutaj .

4lrdyD
źródło
Wystarczy zaznaczyć, że Int('a')sugerowane tutaj jest dokładnie równoważne Int(codepoint('a')), a także krótsze.
Giordano