[英]Is there a way to loop through a sub section of a list in Python
因此,對於包含1000個元素的列表,我想從400循環到500.你是如何做到的?
我沒有看到使用for each和for range技術的方法。
for x in thousand[400:500]:
pass
如果您正在使用iterable而不是列表,則應使用itertools :
import itertools
for x in itertools.islice(thousand, 400, 500):
pass
如果你需要循環超過thousand[500]
,那么使用501作為后一個索引。 即使thousand[501]
不是有效索引,這也會有效。
for element in allElements[400:501]:
# do something
這些是切片並生成整個列表的子列表。 它們是Python的主要元素之一。
運用
for element in allElements[400:501]:
doSomething(element)
使Python創建新對象,並可能對內存使用產生一些影響。
相反,我會使用:
for index in xrange(400, 501):
doSomething(allElements[index])
這種方式還允許您在迭代期間操作列表索引。
編輯:在Python 3.0中,您可以使用range()
而不是xrange()
,但在2.5及更早版本中, range()
創建一個列表,而xrange()
創建一個生成器,它占用較少的寶貴RAM。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.