按特定字词和字母顺序排序

时间:2016-01-28 15:21:06

标签: python python-2.7 sorting

我正在使用python 2.7。我有一个我想要排序的应用程序列表。 我的问题是:我有一个特定的词,我需要在列表的顶部,然后休息将来。

我的清单是这样的:

  • APPNAME1
  • Appname2
  • Appname2Bootstrap
  • Appname3
  • Appname3Bootstrap

现在我使用此代码按字母顺序排序

with open(filename) as
sortedFile:
    sortedFile = sortedFile.readlines()
    sortedFile.sort()

我不知道如何使用“Boostrap”这个词来排序它

1 个答案:

答案 0 :(得分:2)

this answer建立到另一个问题,您可以设置要对其进行排序的键的函数:

from __future__ import print_function

items = ['Appname1', 'Appname2', 'Appname2Bootstrap', 'Appname3', 'Appname3Bootstrap']
items_sorted = sorted(items, key=lambda x: (not x.endswith('Bootstrap'), x))

print('Got the sorted items: {}'.format(items_sorted))

这会将带有“Bootstrap”的两个项目放在排序列表的开头。