2012-12-04 63 views
0

我看了很多類似的問題,但找不到答案,所以我希望你們可以幫助我。我不斷收到TypeError消息,但不知道爲什麼。任何建議將不勝感激。如何設置變量類型? TypeError:不能連接'str'和'int'對象

number = raw_input("Enter a number to be rounded: ") 

decimallocation = number.find('.') 
right = number[decimallocation:]  
greater = int(number+right+1) 
lesser = int(number+right) 

if right >= .5: 
    print (greater) 
else: 
    print (lesser) 
+0

看起來像你的'right'是一個字符串,所以它不能與浮點數進行比較。也許'如果float(右)> = .5:'。 – tiago

回答

1

的錯誤是這行:

greater = int(number+right+1) 

我認爲你正在試圖做的是:

greater = int(number+right) + 1 

還有一個可能的錯誤是在檢查:

right > .5 

其中right是str.5

0

您需要:

greater=int(int(number)+int(right)+1) 
lesser=int(int(number)+int(right)) 

你需要確保一切要添加是intstr,你不能同時添加這兩種在一起。

相關問題