一般情況下,python中對一個字符串排序相當麻煩:
一、python中的字符串類型是不允許直接改變元素的。必須先把要排序的字符串放在容器里,如list。
二、python中的list容器的sort()函數沒返回值。
所以在python中對字符串排序往往需要好幾行代碼。
具體實現方法如下:
1
2
3
4
5
6
|
>>> s =
"string"
>>> l = list(s)
>>> l.
sort
()
>>> s =
""
.
join
(l)
>>> s
'ginrst'
|
對於剛從C/C++等語言轉過來的程序員往往會覺得很習慣,因為在C/C++里這些都是一行語句可以搞定的事情。因此,這里給出了一個簡單的字符串排序方法。
實現代碼如下:
1
2
3
4
|
>>> s =
"string"
>>> s =
""
.
join
((lambda x:(x.
sort
(),x)[1])(list(s)))
>>> s
'ginrst'
|
因為用了lambda,稍為有點難理解