दिलचस्प पोस्ट
सोप या वेब सेवाओं के लिए आराम? PEM BASE64 एन्कोडेड निजी कुंजी फ़ाइल से आरएसए निजी कुंजी प्राप्त करना टैब पर प्रोग्रामिक रूप से नए पेज खोलें जावास्क्रिप्ट के बिल्टिन स्ट्रिंग्स क्या हैं? एक विंडोज सेवा बनाने के लिए सबसे आसान भाषा वेक्टर विकास के बारे में JQuery के विस्तार के तरीके के जावास्क्रिप्ट समकक्ष लूप को तोड़ने के बिना, सरणी के माध्यम से लूपिंग और वस्तुओं को निकालना IE8 प्रदर्शन इनलाइन-ब्लॉक काम नहीं कर रहा है कैसे जावा में एक फ़ोल्डर बनाने के लिए? जावास्क्रिप्ट के साथ IE में टाइप करें <input> टाइपिंग सीआईडीआर पते को सबनेट मुखौटा और नेटवर्क पते में परिवर्तित करना तिथियों की एक श्रृंखला उत्पन्न करना स्ट्रिंग इंटर्निंग क्या है? मैं iPhone पर प्रोग्राम को एक छवि कैसे दिखाऊंगा?

वर्णों की सरणी में स्ट्रिंग कैसे विभाजित है?

मैंने स्ट्रिंग को वर्णों के सरणी में विभाजित करने के उत्तर के लिए वेब को देखने की कोशिश की है लेकिन मुझे एक साधारण विधि नहीं मिल पा रही है

str.split(//) रूबी की तरह काम करने के लिए नहीं लगता है बिना किसी लूपिंग के ऐसा करने का एक सरल तरीका क्या है?

वेब के समाधान से एकत्रित समाधान "वर्णों की सरणी में स्ट्रिंग कैसे विभाजित है?"

 >>> s = "foobar" >>> list(s) ['f', 'o', 'o', 'b', 'a', 'r'] 

आपको सूची की आवश्यकता है

आप स्ट्रिंग लेते हैं और इसे सूची में पास करते हैं ()

 s = "mystring" l = list(s) print l 

आप सूची () के बिना यह बहुत आसान तरीके से भी कर सकते हैं:

 >>> [c for c in "foobar"] ['f', 'o', 'o', 'b', 'a', 'r'] 

मैं इस कार्य को पूरा करने के लिए दो अन्य तरीकों का पता लगाया। यह किसी के लिए सहायक हो सकता है

पहला एक आसान है:

 In [25]: a = [] In [26]: s = 'foobar' In [27]: a += s In [28]: a Out[28]: ['f', 'o', 'o', 'b', 'a', 'r'] 

और दूसरा वाला map और lambda फ़ंक्शन का उपयोग करता है। यह अधिक जटिल कार्यों के लिए उपयुक्त हो सकता है:

 In [36]: s = 'foobar12' In [37]: a = map(lambda c: c, s) In [38]: a Out[38]: ['f', 'o', 'o', 'b', 'a', 'r', '1', '2'] 

उदाहरण के लिए

 # isdigit, isspace or another facilities such as regexp may be used In [40]: a = map(lambda c: c if c.isalpha() else '', s) In [41]: a Out[41]: ['f', 'o', 'o', 'b', 'a', 'r', '', ''] 

अधिक विधियों के लिए अजगर डॉक्स देखें

कार्य स्ट्रिंग के पात्रों पर चलने और उन्हें एक सूची में इकट्ठा करने के लिए नीचे फोड़े होते हैं। सबसे सरल समाधान ऐसा दिखेगा

 result = [] for character in string: result.append(character) 

बेशक, यह सिर्फ करने के लिए छोटा किया जा सकता है

 result = [character for character in string] 

लेकिन अभी भी कम समाधान हैं जो एक ही काम करते हैं

list निर्माता को किसी भी चलने योग्य (आईटरेटर, सूचियों, ट्यूपल्स, स्ट्रिंग आदि) को सूची में परिवर्तित करने के लिए उपयोग किया जा सकता है।

 >>> list('abc') ['a', 'b', 'c'] 

बड़ा प्लस यह है कि यह दोनों पायथन 2 और पायथन 3 में समान काम करता है।

इसके अलावा, Python 3.5 से शुरू (भयानक पीईपी 448 के लिए धन्यवाद) अब यह किसी रिक्त सूची के लिए इसे अनपैक करके किसी भी गति से सूची बनाने के लिए संभव है:

 >>> [*'abc'] ['a', 'b', 'c'] 

यह नीपर है, और कुछ मामलों में list निर्माता सीधे कॉल करने से अधिक कुशल

मैं map आधारित तरीकों का उपयोग करने के बारे में सलाह दूंगा, क्योंकि map पायथन 3 में एक सूची नहीं लौटाता। देखें कि कैसे पाइथन 3 में फ़िल्टर, मैप का उपयोग करें और कम करें

मान लें कि स्ट्रिंग का नाम txt है

 '''Python 2.7''' txt = 'India' arr = list(txt) print arr 

यदि आप एक समय में अपने स्ट्रिंग एक चरित्र को संसाधित करना चाहते हैं आपके पास कई विकल्प हैं यूहेलो = यू'हेेलो \ u0020 वर्ल्ड '

आउटपुट: ['एच', 'ई', 'एल', 'एल', 'ओ', '', 'डब्ल्यू', 'ओ', 'आर' ',' एल ',' डी ']

मानचित्र का उपयोग: प्रिंट (सूची (मैप (लैम्ब्डा सी 2: सी 2, यूहेलो)) आउटपुट: ['एच', 'ई', 'एल', 'एल', 'ओ', '', 'डब्ल्यू', 'ओ ',' आर ',' एल ',' डी ']

कॉलिंग फ़ंक्शन प्रिंट (सूची (उहेलो) में निर्मित ) आउटपुट: ['एच', 'ई', 'एल', 'एल', 'ओ', '', 'डब्ल्यू', 'ओ', 'आर' 'एल', 'डी']

यूहोलो में सी के लिए लूप का उपयोग करना : प्रिंट (सी)

सरल:

 s = 'My' print(list(s)) 

यदि आप केवल स्ट्रिंग तक पहुंच पढ़ना चाहते हैं तो आप सीधे सरणी नोटेशन का उपयोग कर सकते हैं।

 Python 2.7.6 (default, Mar 22 2014, 22:59:38) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> t = 'my string' >>> t[1] 'y' 

Regexp का उपयोग किए बिना परीक्षण के लिए उपयोगी हो सकता है क्या स्ट्रिंग में समाप्त होने वाली नई पंक्ति होती है?

 >>> t[-1] == '\n' False >>> t = 'my string\n' >>> t[-1] == '\n' True 

खैर, जितना मैं सूची (संस्करणों) को पसंद करता हूं, उतना ही एक और अधिक प्रचलित तरीका है जो मुझे मिला (लेकिन यह अच्छा है, इसलिए मैंने सोचा कि मैं इसे मैदान में जोड़ूंगा):

 >>> text = "My hovercraft is full of eels" >>> [text[i] for i in range(len(text))] ['M', 'y', ' ', 'h', 'o', 'v', 'e', 'r', 'c', 'r', 'a', 'f', 't', ' ', 'i', 's', ' ', 'f', 'u', 'l', 'l', ' ', 'o', 'f', ' ', 'e', 'e', 'l', 's'] 
 >>> for i in range(len(a)): ... print a[i] ... 

जहां एक स्ट्रिंग है जिसे आप अलग करना चाहते हैं। मान "एक [i]" स्ट्रिंग के प्रत्येक चरित्र को सूची में जोड़ा जा सकता है।