根据字母顺序比较字符串

时间:2012-11-12 21:38:24

标签: python

编写一个函数,它接受两个字符串作为参数,并返回一个更长的字符串。如果字符串具有相同的长度,则返回按字母顺序排在第一位的字符串。

这是我到目前为止所做的:

    def strings(x,y):
        if len(x) > len(y):
            return x
        if len(x)==len(y):
            return 
        else:
            return y

我想知道我是如何编写代码的,所以它会选择第一个按字母顺序排列第二个if语句的字符串。

3 个答案:

答案 0 :(得分:8)

这应该有效:

if len(x)==len(y):
   return min(x,y)

答案 1 :(得分:7)

您可以直接比较字符串。 x<y表示“x按字母顺序排在前面吗?”所以你可以用:

替换你的第二个块
if len(x) == len(y) and x < y:
    return x

答案 2 :(得分:4)

def f(x,y):
    return len(x) != len(y) and max([x,y],key=len) or min(x,y)