2011-08-20 90 views
1

所以我有這樣的代碼:的情況下循環計算第二次迭代兩次,跳過第三次迭代

def Convert(ama,a): 
    print ama,a 

def run(): 
    z=0 
    while z!=3: 
     z+=1 

     if z==1: 
      n='e' 
     if z==2: 
      n='B' 
     if z=='3': 
      n='G' 

     a='-----2-----5-6----7' 
     Convert(a,n) 
run() 

結果:

-----2-----5-6----7 e 
-----2-----5-6----7 B 
-----2-----5-6----7 B 

雖然我預計結果是:

-----2-----5-6----7 e 
-----2-----5-6----7 B 
-----2-----5-6----7 G 

請幫忙。

+1

程序輸出四行,不是你們三個展示。 –

+0

@邁克爾固定它 –

回答

6
if z=='3': 

應該是這個

if z==3: 
+0

啊... embarasing:| –

+1

具體而言,'3'是'str',而'3'是'int'。在Python中它們是不一樣的。 –