2016-03-01 42 views
0

我有一個python for循環遍歷字典。 字典非常大。爲了調試,我想修改for循環只運行一次。如何限制for循環在運行一次後退出。Python循環只能運行一次臨時測試

for key in dic: 
    do_some_stuff() 
    #after the first iteration exit 

在java中我可以這樣修改for循環:

for (int i = 0; i < n; i++) 
    doSomeStuff(); 

將被限制這樣的:

for (int i = 0; i < n, i < 1; i++) 
    doSomeStuff(); 
+0

你沒有使用'key',爲什麼不簡單地調用'do_some_stuff'一次? – Maroun

+1

@MarounMaroun這很可能是一個例子,而不是實際的代碼。 – Selcuk

回答

4

只需使用break

它終止最近的封閉循環,跳過可選的 子句,如果循環有一個。

for key in dic: 
    do_some_stuff() 
    break 

如果你想運行多次循環(不止一次),你可以用一個計數器:

for i, key in enumerate(dic): 
    do_some_stuff() 
    if i > 10: 
     break 

這將運行11次循環break之前荷蘭國際集團作爲指數(i)從0開始直到10。

+0

好主意! – apadana

2

由於您正在進行調試,我想向您推薦pdb包: 有了它,您可以更好地控制執行過程。

import pdb 
    pdb.set_trace() 
    for key in dic: 
     do_some_stuff() 
1

你總是可以使用切片

from itertools import islice 

for k in islice(dic, 1): 
    do_something(k) 

然後,將其禁用字典迭代器,只需更改1None。因此,你可以有一個調試標誌,爲你決定:

​​