python - Why is this list comprehension giving me a syntax error? -
इस सवाल का पहले से ही एक उत्तर है: < / p>
- 8 जवाब
मेरे पास निम्न सूची समझ है ।
राज्य में टॉवर के लिए टॉवर [टॉवर के लिए टॉवर! = स्पेस अन्य] []]
लेकिन जब मैं इसे चलाता हूँ, अजगर इस त्रुटि को वापस थर देता है:
राज्य में टॉवर के लिए टॉवर [टॉवर के लिए टॉवर करें = = else else] ^ ^ सिंटेक्स एरर: अमान्य सिंटैक्स
अगर मैं और कथन निकाल देता हूं, तो अच्छा चल रहा है क्या मैं किसी और तरह से गलत बयान लिख रहा हूं?
सूची समझें
अगर लेकिन नहीं
अन्य ; यदि आप एक सशर्त अभिव्यक्ति का उपयोग करना चाहते हैं, तो पुनरावृत्त बनाने के लिए, कोष्ठकों का उपयोग करें:
वापस [टॉवर के लिए टॉवर (राज्य टॉवर = = अन्यथा]]]
लेकिन मुझे संदेह है कि आप इसके बजाय तत्व अभिव्यक्ति में अभिव्यक्ति के मूल्य को बदलना चाहते हैं:
वापसी [टावर अगर टावर = स्थान अन्य राज्य के टावर के लिए []
या अगर आप फ़िल्टर कर रहे थे तो
else को छोड़ दें: <पूर्व>
वापस [टॉवर के लिए टॉवर] राज्य में यदि टॉवर! = स्पेस]
जब सूची की समझ विकसित होती है, तो याद रखें कि आपको नेस्टेड के रूप में अभिव्यक्ति को बाएं से दाएं, फाइनल के साथ पढ़ने की जरूरत है अभिव्यक्ति का परिणाम बायीं तरफ बढ़ाता है:
[element_producing_expression नाम के लिए iterable में अगर filter_expression]
का नैतिक बराबर है: < Pre>
नाम के लिए में iterable: यदि filter_expression: element_producing_expression
जहां आप कई नेस्टेड लूप और <सह का उपयोग कर सकते हैं De> यदि आपके उपयोग के मामले में फ़िल्टर की आवश्यकता होती है।
ऊपर दिए गए तीन विकल्पों के समान हैं:
# सशर्त अभिव्यक्ति के लिए उपयोग करने योग्य टॉवर में (राज्य अगर टॉवर! = स्थान अन्य []): टॉवर # राज्य में टॉवर के लिए तत्व की अभिव्यक्ति में सशर्त अभिव्यक्ति: टॉवर अगर टावर! = स्थान अन्य [] # राज्य में टॉवर के लिए और नहीं के साथ अभिव्यक्ति फ़िल्टरिंग: अगर टॉवर! = अंतरिक्ष: टॉवर
Comments
Post a Comment