我想按字典顺序将字符串排序为列表
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/