जब मैं पायथन में कोड लिख रहा हूं, तो मुझे अक्सर कुछ मानदंडों के आधार पर किसी सूची या अन्य अनुक्रम प्रकार से वस्तुओं को हटाने की आवश्यकता होती है। मुझे एक ऐसा समाधान नहीं मिला है जो सुरुचिपूर्ण और कुशल है, क्योंकि वर्तमान में जिस सूची में आप इसे चालू कर रहे हैं, उससे वस्तुओं को हटा देना बुरा है। उदाहरण के लिए, यदि आप ऐसा नहीं कर सकते हैं:पायथन में अनुक्रम से वस्तुओं को हटाने के लिए सुरुचिपूर्ण तरीका?
toremove = []
for name in names:
if name[-5:] == 'Smith':
toremove.append(name)
for name in toremove:
names.remove(name)
del toremove
यह innefficient, काफी बदसूरत और संभवतः गाड़ी (यह कैसे निपटता है कई 'जॉन है:
for name in names:
if name[-5:] == 'Smith':
names.remove(name)
मैं आमतौर पर कुछ इस तरह कर रही अंत स्मिथ की प्रविष्टियां?)। क्या किसी के पास एक अधिक सुरुचिपूर्ण समाधान है, या कम से कम एक अधिक कुशल है?
शब्दकोशों के साथ काम करने वाले एक के बारे में कैसे?
आपका कोड एकाधिक स्मिथ को हटा देता है या आपने इसे संपादित किया है? – systemovich