Python में दो प्रकार के लूप्स होते हैं - for लूप्स और while लूप्स। जहाँ for लूप्स एक सूची (iterable) के तत्वों पर क्रम से चलते हैं, वहीं while लूप अपने बॉडी में दिए गए स्टेटमेंट्स को तब तक दोहराता है जब तक कि while स्टेटमेंट में दी गई शर्त सही होती है। इस अर्थ में, यह if स्टेटमेंट के बहुत समान है। अगर शर्त सही है, तो यह while लूप के अंदर के स्टेटमेंट्स को निष्पादित करता है:
i = 0
while i < 5:
print('Current i is:', i)
i += 1
print('Done')
Current i is: 0
Current i is: 1
Current i is: 2
Current i is: 3
Current i is: 4
Done
The program on the left will print this output
शुरू में, i को 0 असाइन किया जाता है ⇒ i = 0।
फिर, प्रोग्राम चेक करता है कि क्या i < 5 है, और क्योंकि 0 < 5 है, यह while बॉडी के अंदर जाता है।
प्रोग्राम प्रिंट करता है Current i is: 0।
वेरिएबल i का मान 1 बढ़ा दिया जाता है, जिससे i = 1 हो जाता है।
फिर, प्रोग्राम फिर से चेक करता है कि क्या i < 5 है। क्योंकि 1 < 5 ⇒ यह while बॉडी के अंदर जाता है।
प्रोग्राम प्रिंट करता है Current i is: 1।
वेरिएबल i का मान 1 बढ़ा दिया जाता है, जिससे i = 2 हो जाता है।
प्रोग्राम चेक करता है कि क्या i < 5 है। 2 < 5 ⇒ while बॉडी के अंदर जाता है।
प्रोग्राम प्रिंट करता है Current i is: 2।
वेरिएबल i का मान 1 बढ़ा दिया जाता है, जिससे i = 3 हो जाता है।
प्रोग्राम चेक करता है कि क्या i < 5 है। 3 < 5 ⇒ while बॉडी के अंदर जाता है।
प्रोग्राम प्रिंट करता है Current i is: 3।
वेरिएबल i का मान 1 बढ़ा दिया जाता है, जिससे i = 4 हो जाता है।
प्रोग्राम चेक करता है कि क्या i < 5 है। 4 < 5 ⇒ while बॉडी के अंदर जाता है।
प्रोग्राम प्रिंट करता है Current i is: 4।
वेरिएबल i का मान 1 बढ़ा दिया जाता है, जिससे i = 5 हो जाता है।
प्रोग्राम चेक करता है कि क्या i < 5 है। 5 = 5 ⇒ शर्त गलत है। प्रोग्राम while लूप से बाहर निकलता है और Done प्रिंट करता है।
चुनौती
एक धनात्मक पूर्णांक n दिया हुआ है। जब तक यह 0 से बड़ा है, उसके मान को प्रिंट करें और इसे 2 से भाग दें (केवल पूर्ण भाग लें)।