क्या फ़िल्टर फ़िल्टर से डुप्लीकेट फ़िल्टर करने के लिए पाइथन में सूची समझ का उपयोग करने का कोई तरीका है?सूची समझों का उपयोग कर सूची में आसन्न डुप्लिकेट तत्वों को कैसे हटाया जाए?
>>> xs = [1,2,2,3]
>>> print added.reAdj(xs)
[1,2,3]
एसई के माध्यम से एक खोज एक समान लेकिन थोड़ा अलग सवाल पूछने एक earlier inquiry पता चला: सभी डुप्लिकेट एक सूची, लेकिन स्पष्ट रूप से नहीं से निकाला जा सकता है कि क्या
यहाँ मैं क्या मतलब का एक उदाहरण है सूची समझने वाले समाधानों के लिए पूछना। सूची समझ का उपयोग करने के लिए प्रेरणा विशेष रूप से their advantages over traditional for loops की पहचान का पालन करती है।
result = []
most_recent_elem = None
for e in xs:
if e != most_recent_elem:
result.append(e)
most_recent_elem = e
set()
सुझाव है, कि गैर आसन्न डुप्लिकेट में काम निकाल दिए जाते हैं पूरा करने में विफल है, जबकि पाश प्रभावी लेकिन वर्बोज़ है: उपयोगकर्ताओं को इस तरह के रूप सेट() फ़ंक्शन या मानक पाशन के उपयोग का सुझाव दिया।
यह एक सूची समझ में अगले तत्व को सुरक्षित रूप से संदर्भित करने का माध्यम लगता है जैसा कि आवश्यक है।
[x for x in xs if x != **x.next()**]
कोई विचार?
यह और भी मतलब यह है '[1,2,2,2,2 , 3,3,3,4,5,6,6] -> [1,2,3,4,5,6] '? –
@IronFist, आप सही ढंग से समझते हैं। वांछित परिणाम है। –
@Achampion। लिंक के लिए धन्यवाद, लेकिन जहां तक मैं कह सकता हूं, पोस्टर विशेष रूप से सूची समझ से जुड़े उत्तर के लिए नहीं पूछता है। मेरे मूल प्रश्न पोस्ट में एक लूप समाधान शामिल था। –