] निम्नलिखित उदाहरण पर विचार करें जहां एक अपरिभाषित संपत्ति तक पहुंचने का प्रयास एक त्रुटि उठाता है:
>>> a = someclass ()
>>> a.property
ट्रेसबैक (सबसे हालिया कॉल लास्ट):
फ़ाइल "
समाधान: HasAttr () फ़ंक्शन
>>> a = SomeClass() >>> a.property Traceback (most recent call last): File "", line 1, in AttributeError: SomeClass instance has no attribute 'property'
यदि HasAttr (a, 'प्रॉपर्टी'): A.Property
वैकल्पिक विचार
if hasattr(a, 'property'): a.propertyयह Zweiterlinde द्वारा सुझाए गए "माफी के लिए पूछें" दृष्टिकोण को उजागर करने के लायक है, जिसे एक पायथोनिक कन्वेंशन माना जाता है। यह विशेषता तक पहुंचने और किसी भी संभावित अपवाद को संभालने का प्रयास करता है, जैसा कि निम्नलिखित उदाहरण में देखा गया है:
प्रयास करें: एक संपत्ति ATTRIBUTERROR को छोड़कर: # 'संपत्ति' विशेषता
की अनुपस्थिति को संभालें। विशेषता उपलब्धता की संभावना। यदि संपत्ति को ज्यादातर उदाहरणों में मौजूद होने की उम्मीद है, तो इसे सीधे कॉल करना अधिक कुशल हो सकता है। हालाँकि, जब संपत्ति अक्सर अनुपस्थित होने की संभावना है, तो HasAttr () अत्यधिक अपवाद हैंडलिंग को रोकने के लिए बेहतर हो सकता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3