कोष्ठकों के नेस्टिंग की गहराई
केवल गोल, वर्ग और घुँघराले कोष्ठकों वाले पाठ की अधिकतम नेस्टिंग गहराई निकालें।
def bracket_depth(text):
if type(text) is not str:
raise ValueError("bracket.type")
stack, peak = [], 0
pairs = {')': '(', ']': '[', '}': '{'}
for char in text:
if char in "([{":
stack.append(char)
peak = max(peak, len(stack))
elif char in pairs:
if not stack or stack.pop() != pairs[char]:
raise ValueError("bracket.order")
else:
raise ValueError("bracket.alphabet")
if stack:
raise ValueError("bracket.unclosed")
return peakलागू करने से पहले समीक्षा करें
वास्तविक व्यवहार की अपेक्षित परिणाम से तुलना करें। जाँच असफल हो तो अगले बदलाव से पहले कारण समझें।
मॉडल
बेस URL और आवश्यक होने पर API कुंजी से OpenAI-संगत या Anthropic endpoint सेट करें। कनेक्शन जाँचें। स्थानीय मॉडल सर्वर चालू होना चाहिए; दूरस्थ उपकरण अलग से डेटा भेज सकते हैं।
प्रोजेक्ट
खाली पाठ को शून्य गहराई के साथ स्वीकारें लेकिन कटते जोड़े, बेजोड़ कोष्ठक और स्पेस सहित अन्य सभी वर्ण अस्वीकार करें।
def bracket_depth(text):
if type(text) is not str:
raise ValueError("bracket.type")
stack, peak = [], 0
pairs = {')': '(', ']': '[', '}': '{'}
for char in text:
if char in "([{":
stack.append(char)
peak = max(peak, len(stack))
elif char in pairs:
if not stack or stack.pop() != pairs[char]:
raise ValueError("bracket.order")
else:
raise ValueError("bracket.alphabet")
if stack:
raise ValueError("bracket.unclosed")
return peakसत्यापन नियम अगले कॉलर के लिए समझने योग्य बनाएँ
BracketMast, एआई-सहायता प्राप्त विकास को Windows कार्यक्षेत्र में लाता है जहाँ परियोजना फ़ोल्डर और कोडिंग बातचीत जुड़े रहते हैं। जब सत्यापन बदलाव को खराब इनपुट सँभालने के सामान्य अनुरोध से अधिक सटीकता चाहिए, तब इसका उपयोग करें। स्वीकार्य भाषा, विफलता की स्थितियाँ और कॉलर को मिलने वाला परिणाम बताएँ; सुधार सुझाने से पहले सहायक से मौजूदा कार्यान्वयन जाँचने को कहें।
bracket_depth.py से संबंधित काम में यह देखा जा सकता है कि इनपुट में केवल समर्थित ब्रैकेट हैं या नहीं, उनका क्रम सही है या नहीं और खाली मान का क्या अर्थ है। इन निर्णयों को स्पष्ट करने वाला पैच और उदाहरण माँगें। फ़ंक्शन और उसके कॉलर दोनों ध्यान में रखें: स्वीकार्य वर्णसमूह बदलने से व्यवहार बदल सकता है, भले संतुलित इनपुट काम करते रहें। इससे सत्यापन समीक्षा एक सफल प्रदर्शन के बजाय अनुप्रयोग के अनुबंध पर केंद्रित होती है।
प्रस्ताव की समीक्षा के बाद स्वीकार्य स्ट्रिंग, समय से पहले बंद होने वाले ब्रैकेट और अधूरे इनपुट की परियोजना जाँचें चलाएँ। विफलताओं से अनुरोध सुधारें और सहमत त्रुटि व्यवहार बनाए रखें। BracketMast समर्थित OpenAI-संगत या Anthropic एंडपॉइंट से जुड़ता है, जहाँ आवश्यक हो क्रेडेंशियल दिए जाते हैं। यदि एंडपॉइंट उपलब्ध कराता हो तो अप्रतिबंधित कहा गया मॉडल चुन सकते हैं; प्रदाता की शर्तें फिर भी लागू हैं और संदर्भ सीमाएँ तथा उपकरण मॉडल व सर्वर पर निर्भर हैं। आपके परीक्षण तय करते हैं कि परिणामी कोड अनुबंध का पालन करता है या नहीं।
सत्यापक क्या स्वीकार करे, यह तय करना
असमर्थित वर्णों को अनदेखा करें या अस्वीकार?
कॉलर के अनुबंध के आधार पर जानबूझकर चुनें। केवल ब्रैकेट वाली स्ट्रिंग का सत्यापक उन्हें अस्वीकार कर सकता है, जबकि स्रोत पार्सर को अलग नियम चाहिए। अप्रत्याशित वर्ण चुपचाप छोड़ देने वाला बदलाव स्वीकारने से पहले सहायक को यह अंतर बताएँ।
खाली मान का व्यवहार कैसा हो?
तय करें कि अनुप्रयोग में वह मान्य है, अनुपस्थित है या त्रुटि है। फिर फ़ंक्शन का परिणाम और कॉलर की उसकी व्याख्या दोनों जाँचें। खाली इनपुट की परिपाटी संयोगवश होने वाले लूप व्यवहार पर न छोड़ें।
त्रुटि संदेश और त्रुटि अनुबंध में क्या अंतर है?
अनुबंध बताता है कि कौन-सी स्थिति विफल होती है, विफलता कैसे दर्शाई जाती है और कॉलर आगे क्या करता है। इन निर्णयों की साथ समीक्षा करें; केवल शब्द बेहतर करने से असंगत लौटाए मान या अनुप्रयोग में न सँभाला गया अपवाद रह सकता है।
स्वीकार्य इनपुट बदलने के बाद सत्यापक दोबारा इस्तेमाल कर सकते हैं?
पहले अन्य कॉलर देखें। बड़ा स्वीकार्य वर्णसमूह या अलग त्रुटि प्रकार पुराने व्यवहार पर निर्भर कोड को प्रभावित कर सकता है। संगतता स्पष्ट रखें और बदला सहायक दोबारा इस्तेमाल करने से पहले उन निर्भरताओं की जाँचें जोड़ें।
BracketMast · अद्यतन 2026-10-25