我使用的是使用不同語言文本的應用程序,因此,爲了查看或報告目的,需要使用特定語言對某些文本(字符串)進行排序。在Python中對特定區域設置的字符串列表排序
目前,我有一個解決辦法與全球區域設置,這是壞搞亂了,我不想把它製作:
default_locale = locale.getlocale(locale.LC_COLLATE)
def sort_strings(strings, locale_=None):
if locale_ is None:
return sorted(strings)
locale.setlocale(locale.LC_COLLATE, locale_)
sorted_strings = sorted(strings, cmp=locale.strcoll)
locale.setlocale(locale.LC_COLLATE, default_locale)
return sorted_strings
官方Python語言環境的文件明確表示,保存和恢復是一個壞主意,但沒有給出任何建議:http://docs.python.org/library/locale.html#background-details-hints-tips-and-caveats