使用Python对字符串中的元素进行排序

9

我需要对字符串进行排序,我想到了以下的函数。

def mysort(comb_): 
    str = [] 
    size = len(comb_) 
    for c in comb_: 
        str.append(c) 
    str.sort() 
    return ''.join(str) 

有没有办法使它更简洁?

4个回答

22
return ''.join(sorted(comb_))

这就是正确的答案。没有比这更简洁(或习惯用语)的了。当然,忽略变量名中奇怪的下划线。 - jemfinch

3
def sortstr(comb_):
    return ''.join(sorted(comb_))

e:f;b :(


2
如果您想获取一个字符串,请按照以下步骤操作:
def sort_string(string):
    return "".join(sorted(string))

但是,如果您想要返回一个列表,请执行以下操作:
def sort_string(string):
    return sorted(string)

1
def sort_string(s):
    def sort_string_to_a_list(s):
        return sorted(s, lambda x,y: cmp(x.lower(), y.lower()) or cmp(x,y))
    sorted_list = sort_string_to_a_list(s)
    return ''.join(sorted_list)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接