मेरे पास निम्न चर हैं जो उपयोगकर्ता वैकल्पिक रूप से किसी फ़ॉर्म के माध्यम से सबमिट कर सकते हैं (वे आवश्यक नहीं हैं, लेकिन खोज को फ़िल्टर करने के लिए ऐसा कर सकते हैं)।पायथन - यदि वेरिएबल मौजूद हैं
color = request.GET.get ('color')
size = request.GET.get ('size')
अब मैं इन चरों को एक समारोह में पास करना चाहता हूं, लेकिन केवल अगर वे मौजूद हैं। यदि वे मौजूद नहीं हैं तो मैं बिना तर्क के फ़ंक्शन को चलाने के लिए चाहता हूं।
तर्क के बिना समारोह है:
apicall = search()
रंग के साथ ही यह
apicall = search (color)
है और रंग और आकार के साथ यह
apicall = search (color, size)
है तर्क परिभाषित किया गया है अगर मैं पास करना चाहते हैं यह समारोह में है, लेकिन अगर ऐसा नहीं है तो मैं इसे पास नहीं करना चाहता हूं।
ऐसा करने का सबसे प्रभावी तरीका क्या है? क्या पाइथन के लिए अंतर्निहित तरीकों हैं?
हाँ, पर अगर मैं चर में से एक तो निर्धारित नहीं है 'apicall (रंग, आकार)' एक त्रुटि फेंक देगा, है ना? – user1328021
ठीक है धन्यवाद ... आपने जो लिखा है वह है कि मैं इसे कैसे करने के लिए मानता हूं, लेकिन मैं सोच रहा था कि वहां एक और अधिक प्रभावी तरीका होना चाहिए ... – user1328021
@ user1328021 इन दोनों पंक्तियों को निष्पादित करना मान लें: 'color = request.GET .get ('रंग') 'और ' आकार = request.GET.get ('आकार') ', फिर 'रंग' और 'आकार' दोनों को ** परिभाषित ** की गारंटी है, हालांकि वे 'कोई नहीं' हो सकते हैं '। आपको इस बारे में क्या अक्षम लगता है? –