क्या पाइथन में कोई पूर्व-निर्मित अनुकूलित टूल/लाइब्रेरी है जो कुछ "कम से कम" मानों के लिए सूचियों को काट/टुकड़ा करने के लिए है?पायथन: क्रमबद्ध सूचियों को काटने/टुकड़े करने का अनुकूलित तरीका
यहाँ मुद्दा है: मान लीजिए मैं की तरह एक सूची है दो:
a=[1,3,5,7,9]
और मैं सभी नंबरों जो <=
6 हैं हटाना चाहते हैं, तो जिसके परिणामस्वरूप सूची होगा
[7,9]
6 सूची में नहीं है, इसलिए मैं सूची के अंतर्निहित index(6)
विधि का उपयोग नहीं कर सकता। मैं की तरह कर सकते हैं:
#!/usr/bin/env python
a = [1, 3, 5, 7, 9]
cut=6
for i in range(len(a)-1, -2, -1):
if a[i] <= cut:
break
b = a[i+1:]
print "Cut list: %s" % b
जो काफी त्वरित तरीका होगा अगर सूचकांक से कटौती करने के लिए सूची के अंत के करीब है, लेकिन जो अक्षम हो सकता है अगर आइटम सूची की शुरुआत के करीब है (मान लें, मैं उन सभी आइटमों को हटाना चाहता हूं जो >2
हैं, वहां बहुत सारे पुनरावृत्तियों होंगे)।
मैं बाइनरी खोज या इस तरह का उपयोग करके अपनी खुद की खोज विधि भी कार्यान्वित कर सकता हूं, लेकिन मैं सोच रहा था कि क्या इस प्रकार की चीजों को संभालने के लिए लाइब्रेरी में निर्मित एक विस्तृत ... विस्तृत क्षेत्र है जिसे मैं अन्य मामलों में पुन: उपयोग कर सकता हूं उदाहरण के लिए, अगर मुझे >=6
पर सभी नंबरों को हटाना होगा)।
अग्रिम धन्यवाद।
[bisect] (http: //docs.python) की जांच करें।संगठन/2/पुस्तकालय/bisect.html) मॉड्यूल। – kennytm