2012-07-12 15 views
10
x = 'yellow' 
print(sorted(x)) 

रिटर्नपायथन में एक वर्ड स्ट्रिंग के अक्षरों को सॉर्ट करना?

['e', 'l', 'l', 'o', 'w', 'y'] 

क्या मैं चाहता हूँ यह वापस जाने के लिए

ellowy

मैं इसे कैसे पत्र एक सूची में किया जा रहा बिना 'ellowy' लौट कर गया?

+0

धन्यवाद से आयात करने की आवश्यकता होगी बहुत जल्दी जवाब के लिए हर कोई। बहुत उपयोगी। –

+3

हालांकि स्टैकओवरफ्लो एक महान संसाधन है, कृपया ध्यान दें कि आपको "स्ट्रिंग पायथन की सूची" को Google द्वारा आसानी से प्राप्त किया होगा, मैं 100% सकारात्मक हूं, पहला परिणाम सही समाधान होगा। हालांकि मैं आपको दोष नहीं दे रहा हूं, कभी-कभी Google को सही शब्द ढूंढना मुश्किल होता है, कोई नुकसान नहीं होता है और आपको खुशी होती है कि आप इसे झुकाएं! – Trufa

उत्तर

16

असल sorted() जब एक स्ट्रिंग पर हमेशा रिटर्न इस्तेमाल किया व्यक्तिगत पात्रों की एक सूची। ताकि आपको उस सूची से बाहर एक स्ट्रिंग बनाने के लिए str.join() का उपयोग करना चाहिए।

>>> x = 'yellow' 
>>> ''.join(sorted(x)) 
'ellowy' 
9
x = 'yellow' 
print(''.join(sorted(x))) 
+2

एक ही समय में तीन समान (सही) उत्तरों .. एकमात्र समाधान उन सभी को ऊपर उठाना है। – zebediah49

11

एक स्ट्रिंग की join() विधि प्रत्येक आइटम के बीच परिसीमक के रूप में दिए गए स्ट्रिंग वस्तु की प्रतियों के साथ अपने तर्क के प्रत्येक तत्व जुड़ जाता है। बहुत से लोग इस काम करने के लिए एक अजीब और counterintuitive रास्ता खोजने, लेकिन द्वारा कोई रिक्त स्ट्रिंग के साथ तत्वों में शामिल होने आप एक ही स्ट्रिंग में स्ट्रिंग की एक सूची में बदल सकते हैं:

x = 'yellow' 
print(''.join(sorted(x))) 
+0

लॉल .. 3 सेकंड तेज !! :) –

4

आप hate आप के लिए गुइडो के लिए चाहते हैं, की कोशिश:

reduce(lambda l,r: l+r, sorted(x)) 

;-)

अजगर 3 में आप functools पैकेज

+0

lol - downvote के लिए? ईश - निंदा? :-) –

+1

मैंने डाउनवोट नहीं किया लेकिन शायद यह एक साधारण समस्या के लिए एक जटिल समाधान के लिए था? :) – Trufa

+3

-0 "तकनीकी रूप से सही - सही प्रकार का सही!" –

संबंधित मुद्दे