정수 두 개를 나눠 소수로 저장하려면?


저는 1/2 하면 0.5가 나올 줄 알았는데 0이 나오더라고요? 정수 두개를 나누면 소수점을 그냥 잘라버리던데

a, b가 int일 때

c = a/b

한 결과로 c가 float이 되게 하려면 어떻게 해야 할까요?

소스코드

a = 1
b = 2
print a/b
  • 2016년 01월 12일에 작성됨

조회수 221


1 답변


좋아요
0
싫어요
채택취소하기

division 모듈을 import하세요.

from __future__ import division #파이썬3 이상에서는 불 필요

print 1/2

__future__를 쓰지 않는 경우는 다음과 같이 쓰시면 됩니다. 다만, 이 방법은 TypeError가 발생할 수 있으니 주의해서 쓰세요.

a = 1
b = 2
float(a)/float(b)

과 같이 쓰셔도 됩니다

*파이썬 3은 알아서 int/int의 결과를 float으로 저장합니다. 따라서 아무 것도 import 할 필요 없고, 형 변환을 해주지 않아도 괜찮습니다.

  • 2016년 01월 12일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close