मैं सोच रहा था अगर किसी को समझा सकता है क्यों इन दो उदाहरणों अंततः समान ही परिणाम:अजगर वर्ग डिफ़ॉल्ट पैरामीटर
class Myclass():
def __init__ (self, parameter=None)
if parameter is None:
self.parameter = 1.0
else:
self.parameter = parameter
और:
class Myclass():
def __init__ (self, parameter=None)
if parameter:
self.parameter = parameter
else:
self.parameter = 1.0
मैं सहज समझ में 'अगर पहले ... कोई नहीं है 'लेकिन मैं दूसरे उदाहरण के साथ संघर्ष करता हूं। क्या दोनों उपयोग करने के लिए ठीक है?
मुझे लगता है यह काफी एक आसान सवाल इसलिए हो सकता है अगर कोई मुझे किसी भी पढ़ने कि अंतर यह है कि बहुत अच्छा होगा समझने के लिए मदद मिलेगी के लिए प्रत्यक्ष कर सकते हैं।
धन्यवाद!
वे हमेशा एक ही परिणाम नहीं लौटाते हैं। इसे देखने के लिए पैरामीटर = 0 भेजने के साथ प्रयास करें। – wim
'कोई नहीं' * झूठी * है, इसलिए दूसरी स्थिति में दूसरी शाखा में लिया जाता है जब डिफ़ॉल्ट मान का उपयोग किया जाता है। हालांकि, अपवाद हैं। –
[सत्य मूल्य परीक्षण] (https://docs.python.org/3/library/stdtypes.html#truth-value-testing) –