2010-12-18 9 views

Antwort

12

Es gibt kürzere Einzeiler, aber hier ist es statement-by-Anweisung:

# initial string 
input_string = "123245wkjsvd :/'" 
# Convert string to list of characters 
list_of_chars = list(input_string) 
# Sort list 
list_of_chars.sort() 
# Convert to string 
output_string = ''.join(list_of_chars) 

Kürzeste Einzeiler:

print ''.join(sorted("123245wkjsvd :/'")) 
+4

+1 für die Verwendung einer Listenumwandlung in einem Liner. – AndiDog

+1

+1 für nicht redundant "liste" im one-liner :) –

4
"".join(sorted(list("123245wkjsvd :/'"))) 
+0

wow erzielte die gleiche Zeit bis zur Sekunde. +1, um es in einer Zeile zu tun. –

+0

Sie müssen die Zeichenfolge nicht in eine Liste konvertieren. 'Sortiert' nimmt jeden iterierbaren Wert als Eingabe. –

+0

Warum machst du 'liste (...)'? 'str' ist iterierbar, passiere es direkt zu' sorted'. –

0
l = list('123245wkjsvd :/\'') 
l.sort() 
''.join(l) 
Verwandte Themen