Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Ruby

रूबी के लूप कंट्रोल में महारत हासिल करें: redo, retry, और next समझाया गया

हमने retry कीवर्ड के बारे में बात की जब एक्सेप्शन के बाद रीट्राई करने पर चर्चा कर रहे थे। इसका कम ज्ञात समकक्ष redo समान रूप से काम करता है, लेकिन पूरे ब्लॉक्स के बजाय लूप इटरेशन को फिर से चलाता है।

redo कीवर्ड

जैसा कि हमने पिछले अकादमी लेख में सीखा, retry आपको ब्लॉक में कोड के एक टुकड़े को फिर से प्रयास करने देता है:



यह उदाहरण कंसोल पर "Iteration" शब्द प्रिंट करता है इससे पहले एक एक्सेप्शन उठाता है। रेस्क्यू ब्लॉक निष्पादित होता है, जो retry को कॉल करता है और ब्लॉक को शुरुआत से फिर से शुरू करता है। इसके परिणामस्वरूप हमारा प्रोग्राम अंतहीन रूप से Iteration प्रिंट करता है। redo कीवर्ड आपको लूप्स का उपयोग करते समय इसी तरह का प्रभाव प्राप्त करने देता है। यह उन स्थितियों में उपयोगी है जहां आपको पुनरावृति करते समय रीट्राई करने की आवश्यकता होती है।



यह प्रिंट करेगा:

ध्यान दें कि इटरेशन काउंट समान कैसे रहता है? यह निष्पादन को लूप की शुरुआत में वापस ले जाता है। retry का उपयोग करने वाले कोड का यह संस्करण सटीक समान आउटपुट प्रिंट करेगा:



आप redo का उपयोग लूप में रीट्राई इम्प्लीमेंट करने के लिए कर सकते हैं। अगले उदाहरण में हमारे पास जॉब्स की एक कतार है। वे या तो :success या :failure लौटाते हैं। हम लूप के उसी इटरेशन को तब तक दोहराते रहते हैं जब तक जॉब सफल नहीं हो जाता।



next कीवर्ड

यदि आप वर्तमान के शुरुआत में वापस जाने के बजाय लूप के अगले इटरेशन पर जाना चाहते हैं, तो आप next का उपयोग कर सकते हैं।



यह प्रिंट करेगा:

देखें कि इटरेशन काउंट कैसे बढ़ता रहता है? ज्यादातर मामलों में next का उपयोग करना वही है जो आप चाहते हैं। redo को देखें यदि आपको एक लूप की आवश्यकता है जो सटीक संख्या में बार चलता है या सरणी पर पुनरावृति करते समय एरर हैंडलिंग की आवश्यकता होती है।

हमें उम्मीद है कि आपने लूप्स में इटरेशन को दोहराने के बारे में कुछ नया सीखा और इस लेख (या AppSignal अकादमी श्रृंखला में अन्य) के बारे में आपने क्या सोचा, यह जानना पसंद करेंगे। कृपया हमें बताने में संकोच न करें कि आप क्या सोचते हैं, या यदि आपके पास कोई रूबी विषय है जिसके बारे में आप अधिक सीखना चाहेंगे।

रूबी के लूप कंट्रोल में महारत हासिल करें: redo, retry, और next समझाया गया

थिज्स कैडियर

मुख्य प्रौद्योगिकी अधिकारी और सह-संस्थापक। थिज्स कभी-कभी महीनों के लिए हमारे इंफ्रास्ट्रक्चर पर काम करने के लिए गायब हो जाते हैं। यह सुनिश्चित करता है कि हमारे अरबों अनुरोध सही ढंग से संभाले जाते हैं। कंपनी के सर्वश्रेष्ठ ड्रमर।

थिज्स कैडियर के सभी लेख


  1. Python का उपयोग करके विंडो का स्क्रीनशॉट कैसे लें? (Tkinter) Python का उपयोग करके विंडो का स्क्रीनशॉट कैसे लें? (Tkinter)

    Python में मॉड्यूल्स और फंक्शन्स की एक समृद्ध लाइब्रेरी है जो हमें फीचर्ड एप्लिकेशन बनाने और विकसित करने की अनुमति देती है। Tkinter GUI-आधारित एप्लिकेशन बनाने के लिए एक प्रसिद्ध Python लाइब्रेरी है। यदि हम एक ऐसा एप्लिकेशन विकसित करना चाहते हैं जो विंडो का स्क्रीनशॉट लेता है, तो हम निश्चित रूप से एप

  1. HTML में प्लेसहोल्डर एट्रिब्यूट का उपयोग कैसे करें? HTML में प्लेसहोल्डर एट्रिब्यूट का उपयोग कैसे करें?

    यदि आप टेक्स्ट एरिया या इनपुट फ़ील्ड के लिए एक संकेत सेट करना चाहते हैं, तो HTML placeholder एट्रिब्यूट का उपयोग करें। संकेत अपेक्षित मान है, जो उपयोगकर्ता द्वारा मान दर्ज करने से पहले प्रदर्शित होता है, उदाहरण के लिए, नाम, विवरण, आदि।उदाहरणHTML में placeholder एट्रिब्यूट का उपयोग करना सीखने के लिए

  1. जावास्क्रिप्ट में क्यू का कार्यान्वयन जावास्क्रिप्ट में क्यू का कार्यान्वयन

    जावास्क्रिप्ट में क्यू को लागू करने का कोड निम्नलिखित है। उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style>    body { &nb