2012-11-13 83 views
-4

當我運行代碼時,它不會用字母代替破折號,但會將它添加到現有的破折號中。有誰知道如何解決這一問題?Python中的Hang子手

謝謝。

a = 0 
new = "" 
while a < limit: 
    for i in range(len(formula2)): 
    if (formula2[i] == partial_fmla[i]): 
     new[i] = new + partial_fmla[i] 
    elif (formula2[i] == guess): 
     new[i] = guess 
    else: 
     new = new + "-" 
+0

1)此代碼沒有正確粘貼。 2)我們真的可以使用一些背景。 – pydsigner

+0

它不應該運行。你會在'new [i]'處得到索引錯誤' – wim

+0

Python字符串是不可變的,所以一定要分配給'new [i]'是一個錯誤。 –

回答

0

發佈一些額外的代碼可以幫助,但看你的代碼後,我覺得這是在這一行錯誤:

new = new + "-" 

你加入破折號(-)新的,這意味着你是沒有在這裏取代任何東西,但你正在添加一個額外的短跑(-)新的。