Jestem nowy w Redis i zastanawiałem się, czy redis-py obsługuje Unicode i Utf-8.
Sądzę, że możemy również kodować i dekodować, ale nie jestem pewien jak.
Powiedzmy, że wprowadzam wartość do redis tak: "ü".
Wtedy otrzymam to wyjście: "xc3xbc"
Czy ktoś mógłby mi wyjaśnić ten proces?
Dzięki
Odpowiedzi:
4 dla odpowiedzi № 1Redis (magazyn danych) przechowuje bajty, a nie unicode.
W module python redis, konstruktorzy redis.Redis
i redis.StrictRedis
mieć encoding
parametr, który domyślnie jest ustawiony na utf-8
.
Więc twoje "ü" jest zakodowane w utf-8 zanim zostanie zapisane na czerwono. Kiedy odzyskasz go później w Pythonie, otrzymasz po prostu zakodowane bajty.
>>> print(b"xc3xbc".decode("utf-8"))
ü