दिलचस्प पोस्ट
ये संख्याएं समान क्यों नहीं हैं? मैं GWT की सीरियलाइजेशन नीति श्वेतसूची में एक प्रकार कैसे जोड़ूं? जावा सिंक्रनाइज़ेशन PHP के माध्यम से सीएसवी को निर्यात करें डी 3 के साथ एसवीजी तत्व जेड-इंडेक्स को अद्यतन करना स्पष्ट वापसी क्यों एक प्रक्रिया में एक अंतर बना है? ग्राफ से मिलान करने के लिए Matplotlib रंग बार आकार सेट करें क्या सी # कोडिंग मानकों / सर्वोत्तम अभ्यास दस्तावेजों के विकास के लिए कोई सुझाव हैं? jQuery टैग के अंदर छवि जोड़ें जावा स्टैनफोर्ड एनएलपी: स्पीच लेबल्स का भाग? अस्थायी रूप से स्क्रॉलिंग को अक्षम कैसे करें? सी # अपनी कक्षा का नाम प्राप्त करना एक एकल वर्ण और ट्रिम स्ट्रिंग में सफेद स्थान के दृश्यों को संकुचित करें ओरेकल एसक्यूएल डेवलपर में दी गई तालिका को किस तालिका में पता लगाया जा सकता है? एक "एंड्रॉइड बटन" में कैसे "आइकन"

सूची आइटम मुद्रित करने के लिए पायथनिक तरीका

मैं जानना चाहूंगा कि क्या इस से अधिक पायथन सूची में सभी ऑब्जेक्ट प्रिंट करने का एक बेहतर तरीका है:

myList = [Person("Foo"), Person("Bar")] print("\n".join(map(str, myList))) Foo Bar 

मैंने इस तरह से पढ़ा है वास्तव में अच्छा नहीं है:

 myList = [Person("Foo"), Person("Bar")] for p in myList: print(p) 

ऐसा कुछ नहीं है:

 print(p) for p in myList 

यदि नहीं, तो मेरा सवाल है … क्यों? अगर हम व्यापक सूचियों के साथ इस प्रकार की सामग्री कर सकते हैं, तो एक सूची के बाहर एक साधारण बयान के रूप में क्यों नहीं?

Solutions Collecting From Web of "सूची आइटम मुद्रित करने के लिए पायथनिक तरीका"

मान लें कि आप पायथन 3.x का प्रयोग कर रहे हैं:

 print(*myList, sep='\n') 

आप from __future__ import print_function का उपयोग करते हुए पायथन 2.x पर एक ही व्यवहार प्राप्त कर सकते हैं, जैसा कि टिप्पणियों में mgilson द्वारा नोट किया गया है।

पायथन 2.x पर प्रिंट स्टेटमेंट के साथ आपको किसी तरह से चलने की आवश्यकता होगी, print(p) for p in myList के बारे में अपने प्रश्न के बारे print(p) for p in myList , आप केवल निम्नलिखित का उपयोग कर सकते हैं जो एक ही काम करता है और अभी भी एक पंक्ति है:

 for p in myList: print p 

'\n'.join() का उपयोग करने वाले एक समाधान के लिए, मैं map() पर सूची की समझ और जनरेटर पसंद करता हूं इसलिए मैं निम्न का उपयोग करूँगा:

 print '\n'.join(str(p) for p in myList) 

यह मेरे लिए हर समय उपयोगी है :

 #!/usr/bin/python l = [1,2,3,7] print "".join([str(x) for x in l] ) 

पायथन 2 के लिए। *:

यदि आप अपने व्यक्ति वर्ग के लिए फ़ंक्शन __str __ () को अधिभार दें, तो आप मैप के साथ भाग छोड़ सकते हैं (str, …)। इसके लिए एक और तरीका एक फ़ंक्शन बना रहा है, जैसा आपने लिखा है:

 def write_list(lst): for item in lst: print str(item) ... write_list(MyList) 

पायथन 3 में है। प्रिंट () फ़ंक्शन के लिए तर्क sep । दस्तावेज़ीकरण पर एक नज़र डालें।

[print(a) for a in list] अंत में किसी भी प्रकार का एक गुच्छा देगा, हालांकि यह सभी वस्तुओं को प्रिंट कर देगा

@ लुकास के उत्तर का विस्तार (इसे प्राप्त टिप्पणी से प्रेरित):

फ़ॉर्मेट किए गए सूची आउटपुट प्राप्त करने के लिए, आप इन पंक्तियों के साथ कुछ कर सकते हैं:

 l = [1,2,5] print ", ".join('%02d'%x for x in l) 01, 02, 05 

अब ", " विभाजक प्रदान करता है (अंत में नहीं, वस्तुओं के बीच) और %x के साथ संयुक्त स्वरूपण स्ट्रिंग '02d' प्रत्येक आइटम के लिए एक स्वरूपित स्ट्रिंग देता है – इस मामले में, दो अंकों के साथ एक पूर्णांक के रूप में स्वरूपित, शून्य से भरा हुआ

प्रत्येक सामग्री को प्रदर्शित करने के लिए, मैं इसका उपयोग करता हूं:

 mylist = ['foo', 'bar'] indexval = 0 for i in range(len(mylist)): print(mylist[indexval]) indexval += 1 

फ़ंक्शन में उपयोग करने का उदाहरण:

 def showAll(listname, startat): indexval = startat try: for i in range(len(mylist)): print(mylist[indexval]) indexval = indexval + 1 except IndexError: print('That index value you gave is out of range.') 

आशा है कि मैंने मदद की