python 按中文排序

发布时间:2019-09-22 08:13:30编辑:auto阅读(1815)

    安装中文库

    sudo apt-get update
    sudo apt-get install language-pack-zh-hans-base
    sudo dpkg-reconfigure locales

    使用

    import locale
    locale.setlocale(locale.LC_COLLATE, 'zh_CN.UTF8')
    cmp = locale.strcoll
    
    courses.sort(lambda x, y: cmp(x.course_name, y.course_name))

    测试用例

    输入
    # -*- coding: utf-8 -*-
    import locale
    locale.setlocale(locale.LC_COLLATE, 'zh_CN.UTF8')
    cmp = locale.strcoll
    
    items = list('自挂东南枝'.decode('utf-8'))
    print 'before'.center(10, '=')
    print ''.join(items)
    items.sort(lambda x, y: cmp(x, y))
    print 'after'.center(10, '=')
    print ''.join(items)
    输出
    ==before==
    自挂东南枝
    ==after===
    东挂南枝自

关键字