소수점 자동 버림 문제
안녕하세요,
점프투파이썬 4장 연습문제 2번 풀고 있습니다.
정해지지 않은 갯수의 숫자를 입력하면 그 숫자들의 평균을 구하는 함수(avv)를 만드는 건데요,
함수는 잘 작동하는데 print하면 자꾸 소수점이 모두 버림되고 정수 부분만 출력됩니다.
예를 들어서 1,2를 함수에 입력하면(avv(1,2)) 1.5가 출력되어야 하는데 (1+2 =3, 3/2 = 1.5)
1만 출력되어 나옵니다.
print (%.2f' % avv(1,2))
이렇게 출력해도 1.00으로 나오는거 보면 버림하는거 같은데...
소수점 아래 숫자가 출력되도록 하는 방법이 혹시 또 있을까요?
lousie78 님 477
2020년 11월 26일 4:28 오후
댓글 3개 더 보기...
@박응용님 답변 감사합니다! 수정해 봤는데도 계속 1.0으로 나옵니다... ㅠㅠ
-
lousie78님,
2020년 11월 26일 9:07 오후
추천
,
대댓글
@lousie78님 2.7 버전이 저도 없어서 테스트 못해봤는데.. 안되나 보군요.. ㅜㅜ 아마 다음은 될겁니다.
return (result * 1.0) / len(args)
-
박응용님,
M 2020년 11월 26일 9:19 오후
추천
,
대댓글
@박응용님 수정하고 나니 소수점 아래 열 한 자리까지 출력됩니다 ㅠㅠㅋㅋㅋ 감사합니다~! 그런데 1.0을 곱해주는게 소수점 표시를 하게끔 하는 건가요?
-
lousie78님,
2020년 11월 26일 9:24 오후
추천
,
대댓글
@lousie78님 네 소수점 연산 하려면 정수를 소숫점으로 바꾸어 주어야 합니다. 1.0 을 곱해도 되고 아마 return float(result) / len(args) 해도 동일할거에요.
-
박응용님,
2020년 11월 26일 10:12 오후
추천
,
대댓글
@박응용님 오 말씀해 주신 것도 해보니까 되네요!! 늦은 시간까지 감사합니다~! 😊
-
lousie78님,
2020년 11월 26일 11:24 오후
추천
,
대댓글