यहाँ (यह मानते हुए कि अपनी सूची l
नाम है) लिख सकते हैं मानचित्र() और लैम्ब्डा फ़ंक्शंस का उपयोग करके इसे करने का एक और तरीका:
>>> map(lambda d: d['value'], l)
जहां एल सूची है। मैं इस तरह से "sexiest" देखता हूं, लेकिन मैं सूची समझ का उपयोग कर इसे करूँगा।
अद्यतन: मामले कि 'मान' एक महत्वपूर्ण उपयोग के रूप में अनुपलब्ध हो सकता है में:
>>> map(lambda d: d.get('value', 'default value'), l)
अद्यतन: मैं भी lambdas का एक बड़ा प्रशंसक नहीं हूँ, मैं चीजों को नाम के लिए पसंद करते हैं ... इस
>>> import operator
>>> map(operator.itemgetter('value'), l)
मैं भी आगे जाकर एक एकमात्र कार्य स्पष्ट रूप से कहा गया है कि मैं क्या हासिल करना चाहते बनाना होगा: कैसे मैं इस बात को ध्यान में साथ यह करना होगा है
>>> import operator, functools
>>> get_values = functools.partial(map, operator.itemgetter('value'))
>>> get_values(l)
... [<list of values>]
स्रोत
2011-09-01 14:12:33
1) आपने क्या प्रयास किया है? कृपया अपना कोड शामिल करें। 2) "सर्वश्रेष्ठ" इस संदर्भ में एक अर्थहीन शब्द है - सबसे अच्छा मतलब सबसे तेज़, कम से कम स्मृति या ओरेकल-लाइसेंसीकृत उत्पादों का अधिकतर उपयोग हो सकता है। हम नहीं जानते कि आपको "सर्वश्रेष्ठ" से क्या मतलब है। और हम उस कोड पर टिप्पणी नहीं कर सकते जिसे आपने पोस्ट नहीं किया था। –
शायद वह सिर्फ यह पूछना चाहता था कि –
श्री @ एसएलॉट पर ऐसा करने के लिए "पायथनिक" तरीका क्या है, ऐसे में बहुत सारे प्रश्न हैं जिनके पास कोड नहीं है, लेकिन उत्तर, अद्भुत उत्तर हैं, अगर आप नहीं चाहते हैं उत्तर देने के लिए नहीं है क्योंकि x या y, बस इस पोस्ट को अनदेखा करें और यह सब कुछ है। : वी कई साल पहले। –