[英]Python - how to for loop an array from not 0th but xth element?
我有一個像這樣的for
循環
ImgPaths = make_dataset(TestImgPath)
for i, ImgPath in enumerate(ImgPaths):
其中:
TestImgPath = './TestData/TestWhole'
。 TestData
和TestWhole
是文件夾。ImgPath =./TestData/TestWhole\XXXXX.jpg
。 在我的情況下,XXXX 是 00000 到 82700ImgPaths =./TestData/TestWhole\\XXXXX.jpg
。 但我認為它是整個 00000-XXXXX 合二為一,因為ImgPaths
像上面一樣分配。 因此,有 82700 個文件要處理,一個文件需要 24 秒。 等待它一次完成太長了。 父文件夾很大,因此我無法將父文件夾復制為 10 個副本並執行每個副本。 所以划分那個for
循環可能是go的方法。 似乎它不是普通for
循環,而是一個數組for
循環。
那么,如何讓一個數組for
循環在某個元素處開始和停止呢? 如果我想從 11111.jpg 開始,到 22222.jpg 停止,怎么辦?
這是源代碼https://drive.google.com/file/d/1jnE7kSK2eyXEAsTXb_4IctUEbBkZSWJa/view?usp=sharing
謝謝你。
您可以使用條件語句跳過處理,直到i
達到所需的起始編號,然后在i
超過結束編號時break
循環:
for i, ImgPath in enumerate(ImgPaths):
if i > 22222:
break
elif i >= 11111:
# process ImgPath
或使用itertools.islice
將迭代限制在指定范圍內:
import itertools
for ImgPath in itertools.islice(ImgPaths, 11111, 22222 + 1):
# process ImgPath
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.