LINUX.ORG.RU

История изменений

Исправление x3al, (текущая версия) :

RTFM, питон из коробки в юникод не умеет и никогда не умел.

>>> import icu   # https://pypi.org/project/PyICU/
>>> l = ["ёж", "ёжик", "ежу", "ёжику", "ель", "елей", "ежи", "ел"]
>>> sorted(l, key=icu.Collator.createInstance(icu.Locale('ru_RU.UTF-8')).getSortKey)
['ёж', 'ежи', 'ёжик', 'ёжику', 'ежу', 'ел', 'елей', 'ель']
>>> sorted(l, key=icu.Collator.createInstance(icu.Locale('ky_KY.UTF-8')).getSortKey)
['ежи', 'ежу', 'ел', 'елей', 'ель', 'ёж', 'ёжик', 'ёжику']

Исправление x3al, :

RTFM, питон из коробки в юникод не умеет и никогда не умел.

>>> import icu
>>> l = ["ёж", "ёжик", "ежу", "ёжику", "ель", "елей", "ежи", "ел"]
>>> sorted(l, key=icu.Collator.createInstance(icu.Locale('ru_RU.UTF-8')).getSortKey)
['ёж', 'ежи', 'ёжик', 'ёжику', 'ежу', 'ел', 'елей', 'ель']
>>> sorted(l, key=icu.Collator.createInstance(icu.Locale('ky_KY.UTF-8')).getSortKey)
['ежи', 'ежу', 'ел', 'елей', 'ель', 'ёж', 'ёжик', 'ёжику']

Исходная версия x3al, :

RTFM, питон из коробки в юникод не умеет и никогда не умел.

>>> import icu
>>> l = ["ёж", "ёжик", "ежу", "ёжику", "ель", "елей", "ежи", "ел"]
>>> sorted(l, key=icu.Collator.createInstance(icu.Locale('ru_RU.UTF-8')).getSortKey)
['ёж', 'ежи', 'ёжик', 'ёжику', 'ежу', 'ел', 'елей', 'ель']