कहें कि मुझे एक सूची मिली है और मैं उनमें से पहले n
पर पुन: प्रयास करना चाहता हूं। पायथन में इसे लिखने का सबसे अच्छा तरीका क्या है?सूची के पहले एन तत्वों को फिर से कैसे करें?
उत्तर
सामान्य तरीके slicing होगा:
for item in your_list[:n]:
...
अजगर सूचियों हे (1) रैंडम एक्सेस, तो बस कर रहे हैं:
for i in xrange(n):
print list[i]
मैं शायद का उपयोग करेंगे itertools.islice
-, जो किसी भी iterable के साथ काम करने का लाभ मिलता है (< डॉक्स के लिए लिंक पर जाएं) वस्तु।
ध्यान दें कि जब आपकी कोई सूची हो, तो आमतौर पर स्लाइसिंग का उपयोग करने के लिए यह आसान होता है (जब तक आपको स्मृति उपयोग के मुद्दों या उस तरह कुछ करने की चिंता न हो)। यदि यह * पहला * हिस्सा नहीं था, लेकिन अगर यह बाद में कुछ हिस्सा था, तो सामान्य टुकड़ा तेज और अच्छी तरह से दिखने वाला हो सकता है। –
पर्याप्त मेला। इसके अलावा नियमित टुकड़ा अधिक संक्षिप्त है, जो ओपी स्पष्ट रूप से परवाह करता है ... –
तुम सिर्फ सूची काट कर सकते हैं:
>>> l = [1, 2, 3, 4, 5]
>>> n = 3
>>> l[:n]
[1, 2, 3]
और उसके बाद किसी भी iterable साथ के रूप में टुकड़ा पर पुनरावृति।
स्लाइसिंग स्पष्ट, संक्षिप्त, स्पष्ट समाधान की तरह दिखता है। –
सूचकांक के साथ टंकण आमतौर पर टालने के लिए प्रयास करने योग्य कुछ है। –
हाँ, स्लाइसिंग बेहतर है; मैंने इसके बारे में नहीं सोचा –