मैं जेएसओएन लाइब्रेरी का उपयोग कर जेएसओएन अनुरोधों को पार्स कर रहा हूं जो पायथन शब्दकोश में पार्स करता है। चूंकि अनुरोध उपयोगकर्ता द्वारा जेनरेट किए गए हैं, इसलिए मुझे उन पैरामीटर के लिए डिफ़ॉल्ट मानों को ठीक करने की आवश्यकता है जिन्हें आपूर्ति नहीं की गई है। अन्य भाषाओं में टर्नरी ऑपरेटरों की तरह सामान होते हैं जो दोहराव वाले अनुप्रयोगों के लिए समझ में आता है। लेकिन नीचे दिए गए कोड प्रति पैरामीटर 4 लाइनों की आवश्यकता है।पाइथनिक रूप से शब्दकोश से डिफ़ॉल्ट मान कैसे ठीक करें?
if "search_term" in request.keys():
search_term=request['search_term']
else:
search_term=""
if "start" in request.keys():
start=request['start']
else:
start=0
if "rows" in request.keys():
rows=request['rows']
else:
rows=1000000
वहाँ एक pythonic कोड की लाइनों को कम करने या इसे और अधिक पठनीय बनाने के लिए रास्ता नहीं है?
संपादित: दोनों (ऊपर) जवाब समान रूप से उपयोगी होते हैं। मैं विभिन्न परिस्थितियों में दोनों का उपयोग किया
के बाद से और कोई नहीं अभी तक बाहर इस ओर इशारा किया गया है, लाइन: यदि "पंक्तियाँ" request.keys() में **: ** है यह भी कि आप घमंडी कोड करता है
isinstance(result, dict)
से निपटने के लिए की जरूरत है में मदद करता है सरल के बराबर: ** यदि अनुरोध में "पंक्तियां": **। – MrWonderful