input:sort_words ['zero', 'yeLLow
', 'Dog', 'Burger', 'x'] # 输出: ['汉堡', '狗', '耶洛', '零', 'x']
输入:sort_words ["鱼"、"水"、"海绵宝宝"、"球"]
# 输出: ["海绵宝宝"、"水"、"鱼"、"球"]
输入:sort_words ["猪"、"青蛙"、"猫"]
# 输出: ["猪"、"猫"、"青蛙"]
>您可以使用内置的sorted
函数,但您需要向key
提供一个应用所需排序逻辑的函数。如果第一个字母的大小写相同,并且字符串的长度相同,则字符串列表中的项相等。大写字母小于小写字母,较长的单词小于较短的单词。
def sort_key(string):
return (string[0].islower(), -len(string))
sorted(['Pig', 'frog', 'Cat'], key=sort_key)
# output: ['Pig', 'Cat', 'frog']
你来了:
inputs=['zero', 'yeLLow', 'Dog', 'Burger', 'x']
required_list=[(1 if i[0].isupper() else 0,len(i),i) for i in inputs]
required_list.sort(reverse=True)
print([k for i,j,k in required_list])