सभी आवश्यक मापदंडों को किसी भी डिफ़ॉल्ट तर्क से पहले रखा जाना चाहिए। केवल इसलिए कि वे अनिवार्य हैं, जबकि डिफ़ॉल्ट तर्क नहीं हैं। सिंथेटिक रूप से, दुभाषिया के लिए यह तय करना असंभव होगा कि कौन से मूल्यों का मिलान होता है यदि मिश्रित मोड की अनुमति दी जाती है। SyntaxErrorयदि तर्क सही क्रम में नहीं दिए गए हैं तो A उठाया जाता है:
अपने फ़ंक्शन का उपयोग करते हुए, हम कीवर्ड तर्क पर एक नज़र डालते हैं।
def fun1(a="who is you", b="True", x, y):
... print a,b,x,y
मान लें कि इसके कार्य को उपरोक्त रूप में घोषित करने की अनुमति है, तो उपरोक्त घोषणाओं के साथ, हम निम्नलिखित (नियमित) स्थिति या तर्क कर सकते हैं:
func1("ok a", "ok b", 1) # Is 1 assigned to x or ?
func1(1) # Is 1 assigned to a or ?
func1(1, 2) # ?
आप फ़ंक्शन कॉल में चर का असाइनमेंट कैसे सुझाएंगे, कैसे कीवर्ड तर्कों के साथ डिफ़ॉल्ट तर्क का उपयोग किया जाएगा।
>>> def fun1(x, y, a="who is you", b="True"):
... print a,b,x,y
...
संदर्भ O'Reilly - Core-Python
जहां यह फ़ंक्शन उपर्युक्त फ़ंक्शन कॉल के लिए डिफ़ॉल्ट रूप से सही तर्क का उपयोग करता है। कीवर्ड तर्क कॉलिंग आउट-ऑफ-ऑर्डर स्थिति संबंधी तर्कों के लिए प्रदान करने में सक्षम होने के लिए उपयोगी साबित होते हैं, लेकिन, डिफ़ॉल्ट तर्कों के साथ युग्मित होने के साथ-साथ, उन्हें लापता तर्कों को "स्किप ओवर" करने के लिए भी उपयोग किया जा सकता है।
def myfunction(position_arguments, *arguments, **keywords):`....`