मैं छोटे पायथन फ़ंक्शन को छोटे में पुन: सक्रिय करना चाहता हूं। उदाहरण के लिए, इस कोड स्निपेट पर विचार करें:पायथन: बहुत से तर्कों के बारे में पिलिंट चेतावनियों से परहेज करना
x = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9
बेशक, यह एक मामूली उदाहरण है। अभ्यास में, कोड अधिक जटिल है।
def mysum(x1, x2, x3, x4, x5, x6, x7, x8, x9):
x = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9
return x
समस्या यह है कि pylint भी कई तर्क बारे में एक चेतावनी ट्रिगर करेगा है: मेरा मुद्दा यह है कि यह कई स्थानीय दायरे चर निकाले कार्य करने के लिए पारित किया जा करने के लिए होता है कि, जो दिखाई दे सकता है शामिल हैं। मैं की तरह कुछ कर रही द्वारा चेतावनी से बच सकते हैं:
def mysum(d):
x1 = d['x1']
x2 = d['x2']
...
x9 = d['x9']
x = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9
return x
def mybigfunction():
...
d = {}
d['x1'] = x1
...
d['x9'] = x9
x = mysum(d)
लेकिन इस दृष्टिकोण मेरे लिए बदसूरत घरों में शौचालय, यह कोड का एक बहुत है कि अनावश्यक है लेखन की आवश्यकता है।
क्या ऐसा करने का कोई बेहतर तरीका है?
मेरा मानना है कि mysum() को सरलीकृत किया जा सकता है: 'वापसी राशि (d.values ())' या कम से कम 'वापसी राशि ([d [foo] foo (' x1 ',' x2 ', में foo के लिए .. ।, 'x 9')]) '। क्या मैं भी सूची-समझ खुश हूं? – MatrixFrog
मैसूर() केवल एक अमूर्त है, वास्तविक परिदृश्यों में जिस कोड को निकालने की आवश्यकता है वह अधिक जटिल है। मेरा मुद्दा निकाले गए फ़ंक्शन में कई चर पारित करने और संभव होने पर पिलिंट चेतावनी से बचने के बारे में है (स्पष्ट रूप से उस चेतावनी को अनदेखा करने के लिए पिलिंट बनाने के बिना)। – Anonymous