2011-03-27 15 views
17

हाय में सूचीबद्ध करने के लिए मैं बहुत प्रोग्रामिंग में नया हूँ और मैं एक स्ट्रिंग को विभाजित करने की कोशिश कर रहा हूँ: प्रकार की सूची मेंस्ट्रिंग अजगर

'QH QD JC KD JS' 

:

['QH', 'QD', 'JC', 'KD', 'JS'] 

मैं बंटवारे की कोशिश की है लेकिन यह काम नहीं लग रहा था। मैं ऐसा कैसे कर पाऊंगा?

धन्यवाद

+2

कैसे आप स्ट्रिंग को विभाजित करने की कोशिश की थी? –

+0

मैं आपको Google को "डाइव इन पायथन" नामक एक निःशुल्क ऑनलाइन पुस्तक की अनुशंसा करता हूं – invert

उत्तर

39
>>> 'QH QD JC KD JS'.split() 
['QH', 'QD', 'JC', 'KD', 'JS'] 

split:

वापसी स्ट्रिंग में शब्दों की एक सूची, सीमांकक स्ट्रिंग के रूप में sep का उपयोग कर। यदि maxsplit दिया गया है, तो अधिकांश maxsplit विभाजन किए जाते हैं (इस प्रकार, सूची में maxsplit+1 तत्व होंगे)। यदि maxsplit निर्दिष्ट नहीं है, तो पर विभाजन की संख्या (सभी संभव विभाजन किए गए हैं) पर कोई सीमा नहीं है।

तो sep दिया जाता है, लगातार सीमांकक एक साथ समूहबद्ध नहीं हैं और खाली तार (उदाहरण के लिए, '1,,2'.split(',') रिटर्न ['1', '', '2']) परिसीमित करने के लिए माना जाता है। sep तर्क में एकाधिक वर्ण शामिल हो सकते हैं (उदाहरण के लिए, '1<>2<>3'.split('<>')['1', '2', '3'] लौटाता है)। एक निर्दिष्ट विभाजक एक निर्दिष्ट विभाजक रिटर्न [''] के साथ एक खाली स्ट्रिंग विभाजित करना।

तो sep निर्दिष्ट किया जाता है नहीं या None, एक विभिन्न बंटवारे एल्गोरिथ्म लागू किया जाता है: लगातार खाली स्थान के के रन एक भी विभाजक के रूप में माना जाता है, और परिणाम शुरू में कोई रिक्त स्ट्रिंग से युक्त या अंत होगा यदि स्ट्रिंग व्हाइटस्पेस का नेतृत्व या पीछे है। नतीजतन, खाली स्ट्रिंग या वाली एक स्ट्रिंग को विभाजित करना None विभाजक के साथ व्हाइटस्पेस [] देता है।

उदाहरण के लिए, ' 1 2 3 '.split() रिटर्न ['1', '2', '3'], और ' 1 2 3 '.split(None, 1) रिटर्न ['1', '2 3 ']

3
यहाँ

साधारण

a = [x for x in 'abcdefgh'] #['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] 
संबंधित मुद्दे