2013-11-17 1 views
0

정수 시퀀스를 쉼표로 나눈 값의 합을 계산하려고합니다.Python ValueError : int()에 대한 리터럴이 잘못되었습니다 : '1.5'

내 코드는 다음과 같습니다

예를 들어
s = raw_input('Input sequence of integers divided by commas: ') 
i = 0 
pointer = 0 
sLen = len(s) 
seqSum = 0.00 

for i in range(0,sLen): 
    if s[i] == ',': 
     print s[pointer:i] 
     seqSum = seqSum + int(s[pointer:i]) 
     pointer = i+1 

seqSum = seqSum + int(s[pointer:sLen]) 
print str(seqSum) 

, 1.5,1.5,1.5

그러나 내가 갖는 : ValueError: invalid literal for int(): '1.5' -이 어떻게 해결합니까?

+8

'1.5'는 정수가 아닙니다. 지금은 그렇습니다. –

+3

또한 코드를 많이 단순화 할 수 있습니다 :'print sum (float (x) for s.split (','))' – iurisilvio

답변

4

정수가 아닌 부동 소수점 값을 사용할 수 있습니다. 이러한 번호를 지원하려면 float()을 대신 사용하십시오.

+0

감사합니다. – Tarkunian

관련 문제