मैं पाइथन हार्ड हार्ड सीखने में व्यायाम 41 तक हूं, और मुझे इस तथ्य के आस-पास अपने मस्तिष्क को लपेटने में वास्तव में कठिन समय है कि पूरी चीज सिर्फ एक फ़ंक्शन पर चलती है क्योंकि इसे किसी मान के रूप में असाइन किया गया है चर। मुझे यह बताते हुए कि यह कैसे काम करता है एक छोटे से स्क्रिप्ट ऊपर लिखा था, और यह करता है:क्यों foo = function() पायथन में फ़ंक्शन चलाता है?
def pants():
print "Put on some pants!"
def shorts():
print "And don't forget your underwear!"
zap = pants()
thing = shorts()
के साथ परिणाम जा रहा है
:
Put on some pants!
And don't forget your underwear!
तो स्पष्ट रूप से ऐसा होता है, लेकिन मैं नहीं समझ सकता क्यों भाषा इस तरह से काम करती है - भाषा के पीछे तर्क क्या है जो इसे ऑपरेटिंग का एक मूल्यवान तरीका बनाता है। मुझे लगता है कि को समझने के लिए आगे बढ़ना मेरे लिए सहायक होगा क्यों यह "बस जिस तरह से काम करता है" की बजाय यह है।
स्पष्टता के लिए: मैं पूछ रहा हूं (मुझे लगता है) फ़ंक्शन क्यों चल रहा है, जब मैं जो कुछ कर रहा हूं वह इसे किसी चीज़ के लिए मान के रूप में असाइन कर रहा है। प्रिंट स्टेटमेंट बस वहां हैं इसलिए मैं देख सकता हूं कि फ़ंक्शन वास्तव में चल रहा है।
यह तथ्य यह है कि मैं कभी भी नहीं कर रहा हूँ वास्तव में
पैंट चल रहा है() शॉर्ट्स()
है कि मुझे भ्रमित कर रहा है।
एक अत्याचार सादृश्य बनाने के लिए, यदि मुझे-पाक-कुकीज़ घर पर "कुकीज़()" थे, और मैं शनिवार को कुकीज़ बनाने के लिए थे, मैं अंत में विश्वास हो सकता है कि
शनिवार = कुकीज़()
लेकिन सिर्फ सोच नहीं वास्तव में पाक कुकीज़ रूप में एक ही "हे, शनिवार कुकी दिन है" है ... तो क्यों सिर्फ
कह शनिवार = कुकीज़()
वास्तव में सह बेक करता कुछ बाद के उपयोग के लिए परिवर्तनीय "कुकीज़()" के साथ बस शनिवार को स्थापित करने के बजाय ठीक है?
तुम शायद भ्रमित '' return' साथ print'। – JJJ
मुझे लगता है कि जुहाना सही हो सकता है। क्या आप 'ज़ैप' को "कुछ पैंट पर रखो" का मूल्य रखने की उम्मीद कर रहे हैं? यदि ऐसा है तो 'प्रिंट' को' वापसी 'में बदलें और उसके बाद इसे निर्दिष्ट करने के बाद' प्रिंट ज़ैप 'बदलें। – chooban
हां, स्पष्ट रूप से आपकी उम्मीदों को भाषा के साथ गलत तरीके से ग़लत किया गया है। आप क्या उम्मीद कर रहे थे –