पायथन में, मुझे पता है कि एक स्थानीय स्कोप्ड वैरिएबल को देखकर वैश्विक स्कोप्ड वैरिएबल को देखने से काफी तेज है। तो:पायथन: एक विधि के अंदर जब स्थानीय चर के बराबर कक्षा विशेषताएँ हैं?
a = 4
def function()
for x in range(10000):
<do something with 'a'>
धीमी गति से
def function()
a = 4
for x in range(10000):
<do something with 'a'>
है तो, जब मैं एक विशेषता है और एक विधि के साथ, एक वर्ग परिभाषा को देखो:
class Classy(object):
def __init__(self, attribute1):
self.attribute1 = attribute1
self.attribute2 = 4
def method(self):
for x in range(10000):
<do something with self.attribute1 and self.attribute2>
self.attribute के अपने प्रयोग है मेरे पहले या दूसरे समारोह की तरह? यदि मैं उप-वर्ग क्लासी के बारे में क्या हूं, और मेरे उप वर्ग में किसी विधि से विशेषता 2 तक पहुंचने का प्रयास करता हूं?
जबकि मैं आम तौर पर इस प्रश्न के उत्तर के बारे में उत्सुक था, असली कारण यह मैं पूछ रहा था क्योंकि मेरे पास कई स्थिरांक हैं जो लगभग निश्चित रूप से केवल एक विधि द्वारा उपयोग किए जाएंगे, और मुझे यकीन नहीं था कि मुझे चाहिए उन्हें उस विधि के भीतर परिभाषित करें, या इनिट के भीतर (यदि मुझे बाद में पता चलता है कि उन्हें कहीं और एक्सेस करने की आवश्यकता है)। चूंकि यह संभावना दूरस्थ है, मुझे लगता है कि मैं उन्हें विधि में परिभाषित कर दूंगा। धन्यवाद। – Wilduck