我想按字典顺序将字符串排序为列表

str='aAaBbcCdE'


['A','a','a','B','b','C','c','d','E']

但是sorted()给了我这个输出:
['A','B','C','E','a','a','b','c','d']

如何按字典顺序排序?

最佳答案

有内置函数时,请勿使用lambda函数。也不要使用sorted的cmp参数,因为它已被弃用:

sorted(s, key=str.lower)

或者
sorted(s, key=str.upper)

但这可能无法使“A”和“a”保持顺序,因此:
sorted(sorted(s), key=str.upper)

这样,根据sorted的性质,对于几乎排序的列表(第二个sorted),该操作将非常快。

关于python - 按字典顺序对字符串排序python,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7371935/

10-13 00:06