2014-01-07 47 views
0

我有一個程序,幾乎包含一個簡單的循環,它通過排列在列中的一堆數字(在電子表格中的許多其他列中),它由一堆if語句組成,這些語句檢查每個數字在特定的範圍內並且基於它落入的範圍,它將執行特定的任務。如何在python中獲取循環以在遇到空單元格時跳過循環中的一個迭代?

然而,問題在於,每一個現在,然後,一些列單元格將只包含一個「 - 」符號,不會有任何數字和計劃只是停在那裏,因爲它不能比較破折號與我正在做if語句比較的數字範圍。跳過這些類型的單元格的最佳方法是什麼?我無法刪除這些單元格,因爲我擁有100,000多行,並且電子表格中還有其他欄對我來說很有用。我嘗試過使用break和continue函數,但由於某些原因,程序不會像這樣讀取它。

謝謝!

for x in range(1,1000): 
    if value[x] == "-": 
     break # I tried this with the continue function as well 
+4

你要找的'continue' – Blender

+0

[休息,繼續語句,否則循環中的子句](http://docs.python.org/2/tutorial/controlflow.html#break-and-continue-statements-and-else-clauses-on-loops) – alko

+0

你可以顯示一些背景代碼。循環如何構建? –

回答

3

使用continue。例如:

for x in range(100): 
    if 20 < x < 40: 
     continue # skip to next iteration 
    print(x) 

,將打印所有號碼從0到99,但跳過數如果是20和40之間

0
for i in data: 
    if i == "": 
     continue # this will skip to the next iteration 
    else: 
     # do your normal stuff here 
+0

嘿,我試過,但由於某種原因,它仍然沒有正確讀取這些空白單元格。有任何想法嗎?也許「」並不代表空白單元格? – bioprogrammer

+0

@bioprogrammer我只是把「」作爲填充符,我不確定每一行讀入的格式。你必須粘貼讀入的原始數據才能看到一個例子。 – CoryKramer

+0

已在上面添加。稍微改變,現在不是空白單元格,單元格中有一個「 - 」。我最初將這些細胞中的所有「 - 」都變成了空白細胞,但我認爲在每個細胞中處理「 - 」比處理空白細胞更容易。 – bioprogrammer

相關問題