2012-08-02 33 views
0

我剛剛開始使用Python(帶有大量的VBA),所以我正在玩一些簡單的語法。無法讓python在for循環中做簡單的增量

我已經寫了這個簡單的for循環,但輸出似乎是錯誤的。我無法讓變量'c'增加。

這裏是我的代碼:

class Card: 
    def county(self): 
     for n in range(0,13): 
      c = 0 
      c = c + 1 
      print c 
    pick_card = Card() 
    print pick_card.county() 

和輸出僅僅是「1」,印刷13次,隨後是「無」

我在做什麼錯?

+3

你應該移動'C = 0'外循環;)。另外,python支持'+ ='就像在C中一樣,所以你可以使用'c + = 1'而不是'c = c + 1' – mgilson 2012-08-02 18:43:52

回答

7

通過循環每一次,你設置c0,然後加入1,使之成爲1

而且,你的最後一行是從你的函數,它不返回任何打印的返回值(因此「無」)

+0

謝謝!那對我來說很愚蠢。 – dwstein 2012-08-02 18:46:32

1

要分配它0第一,然後通過遞增1。它因此它總是1. 使用以下嘗試:

class Card: 
    def county(self): 
     c = 0 
     for n in range(0,13): 
      c += 1 
      print c 
    pick_card = Card() 
    print pick_card.county() 
+0

謝謝。愚蠢的錯誤在我的角色。 – dwstein 2012-08-02 18:46:50

+1

嗯哦 - IndentationFault ...(抱歉,有些原因我認爲這很有趣,因爲它聽起來像SegmentationFault)。 – mgilson 2012-08-02 18:50:26

+0

@mgilson,謝謝!我真的有時會失明:( – 2012-08-02 19:02:13