लूप के लिए पायथन के अंदर लूप काउंट प्राप्त करें


259

एक पायथन forलूप में जो हम लिख सकते हैं एक सूची पर आधारित है:

for item in list:
    print item

और यह बड़े करीने से सूची के सभी तत्वों से गुजरता है। क्या लूप के भीतर यह जानने का कोई तरीका है कि मैं अब तक कितनी बार लूपिंग कर चुका हूं? उदाहरण के लिए, मैं एक सूची लेना चाहता हूं और दस तत्वों को संसाधित करने के बाद मैं उनके साथ कुछ करना चाहता हूं।

जिन विकल्पों के बारे में मैंने सोचा था वे कुछ इस तरह होंगे:

count=0
for item in list:
    print item
    count +=1
    if count % 10 == 0:
        print 'did ten'

या:

for count in range(0,len(list)):
    print list[count]
    if count % 10 == 0:
        print 'did ten'

क्या for item in listअब तक पुनरावृत्तियों की संख्या प्राप्त करने का एक बेहतर तरीका (बस की तरह ) है?


1
आप विखंडू में एक सूची पर पुनरावृत्त होने के उत्तरों में भी दिलचस्पी ले सकते हैं: stackoverflow.com/questions/434287/…
डेव बाकर

जवाबों:



86

निक से सहमत हैं। यहाँ अधिक विस्तृत कोड है।

#count=0
for idx, item in enumerate(list):
    print item
    #count +=1
    #if count % 10 == 0:
    if (idx+1) % 10 == 0:
        print 'did ten'

मैंने आपके कोड में काउंट वैरिएबल पर टिप्पणी की है।


9
तुम भी 0 के बजाय 1 के साथ गणना शुरू करने के लिए enumerateवैकल्पिक startपैरामीटर का उपयोग कर सकते हैं , हालांकि तब मैं countइसके बजाय ओपी के नाम का उपयोग करूंगा idx
स्टीफन पोचमैन

मुझे नहीं पता था कि एक वैकल्पिक स्टार्ट पैरामीटर है। जानकार अच्छा लगा। धन्यवाद
विक्रम गर्ग

1

मैं पुराने सवाल को जानता हूं लेकिन .... दूसरी बात देख रहा हूं इसलिए मैं अपना शॉट देता हूं:

[each*2 for each in [1,2,3,4,5] if each % 10 == 0])

1

जिप फ़ंक्शन का उपयोग करके हम तत्व और सूचकांक दोनों प्राप्त कर सकते हैं।

countries = ['Pakistan','India','China','Russia','USA']

for index, element zip(range(0,countries),countries):

         print('Index : ',index)
         print(' Element : ', element,'\n')

output : Index : 0 Element : Pakistan ...

यह सभी देखें :

Python.org


0

प्रयोग करके देखें itertools.count([n])


2
मुझे यकीन नहीं है कि आप यहां गिनती का उपयोग कैसे करेंगे। संख्याओं के अनुक्रम उत्पन्न करने के लिए गणना का उपयोग किया जाता है।
कोडी कोडमोनकी

लेकिन यह अगले पुनरावृत्ति के लिए मान को कैसे रीसेट करेगा। Itertools.count () का उपयोग करना यहां संभव नहीं है।
जावेद
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.