Python pccolor сюжет с двумя с двумя осями X описание

Это решение будет использовать ваш языковой стандарт вашей системы, а в качестве бонуса он будет сортировать и другие персонажи в соответствии с текущей локалью (поместит «ü» после «u» в немецкий язык и т. д.).

from locale import setlocale, strxfrm, LC_ALL
import operator

# call setlocale to init current locale
setlocale(LC_ALL, "")

def locale_keyfunc(keyfunc):  
  def locale_wrapper(obj):
    return strxfrm(keyfunc(obj))
  return locale_wrapper

list_of_dicts.sort(key=locale_keyfunc(operator.itemgetter("name")))

Это, конечно, использует, что сортировка локали - это «естественный» вид пользовательского интерфейса, который вы хотите эмулировать с помощью .lower ().

Я поражен тем, что модуль locale python неизвестен и не используется, он наверняка является важным компонентом в приложении, которое я пишу (переведен на несколько языков, но языковой модуль важен для того, чтобы даже получить модуль one вправо. Пример: V 'и' W ', так что вам нужно их сопоставить. locale делает все это для вас.). В локали POSIX (не по умолчанию) это вернет сортировку «a» после «Z».

0
задан 18 January 2019 в 14:16
поделиться