Please Enable JavaScript!
Gon[ Enable JavaScript ]

파이썬 Python 실수(float) 사용하는 방법

파이썬 Python
반응형

파이썬의 **실수(float)**는 소수점이 있는 숫자를 표현하는 자료형입니다. 소수점 아래 값을 다룰 수 있기 때문에 계산, 과학, 금융 등 다양한 분야에서 활용됩니다. 이 자료형은 IEEE 754 표준을 사용하여 64비트 부동소수점으로 표현됩니다.

 


1. 실수 생성

기본 실수 생성

a = 3.14
b = -0.25
c = 1.0  # 소수점이 있으면 실수로 간주
print(a, b, c)

결과:

3.14 -0.25 1.0

정수를 실수로 변환

a = float(10)
print(a)

결과:

10.0

float() 함수를 사용하면 정수를 실수로 변환할 수 있습니다.


2. 문자열을 실수로 변환

num_str = "123.45"
num = float(num_str)
print(num)

결과:

123.45

float() 함수는 문자열 형태의 숫자를 실수로 변환합니다. 잘못된 문자열을 변환하려고 하면 오류가 발생합니다.


3. 실수 연산

기본 연산

a = 3.5
b = 2.0

print(a + b)  # 덧셈
print(a - b)  # 뺄셈
print(a * b)  # 곱셈
print(a / b)  # 나눗셈

결과:

5.5
1.5
7.0
1.75

몫, 나머지, 거듭제곱

a = 7.5
b = 2.0

print(a // b)  # 몫
print(a % b)   # 나머지
print(a ** b)  # 거듭제곱

결과:

3.0
1.5
56.25

//와 %는 실수에서도 동작하며, 결과는 실수로 반환됩니다.


4. 반올림과 절댓값

반올림: round()

a = 3.14159
print(round(a, 2))  # 소수점 둘째 자리까지 반올림

결과:

3.14

round()는 소수점 아래 특정 자리까지 반올림합니다.

절댓값: abs()

a = -7.25
print(abs(a))  # 절댓값

결과:

7.25

abs()는 숫자의 절댓값을 반환합니다.


5. 실수와 정수 간 변환

실수 → 정수

a = 10.75
b = int(a)
print(b)

결과:

10

int() 함수는 실수를 정수로 변환하며, 소수점 아래 값을 버립니다.

정수 → 실수

a = 10
b = float(a)
print(b)

결과:

10.0

float() 함수는 정수를 실수로 변환합니다.


6. 실수의 무한대와 NaN (Not a Number)

무한대

positive_inf = float("inf")
negative_inf = float("-inf")

print(positive_inf)  # 양의 무한대
print(negative_inf)  # 음의 무한대

결과:

inf
-inf

float("inf")는 양의 무한대를, float("-inf")는 음의 무한대를 나타냅니다.

NaN (Not a Number)

nan_value = float("nan")
print(nan_value)

결과:

nan

float("nan")은 숫자가 아님을 나타냅니다.


7. 실수의 정밀도 문제

실수는 근삿값으로 저장되므로 정확하지 않을 수 있습니다.

a = 0.1 + 0.2
print(a == 0.3)  # 비교
print(a)         # 실제 값

결과:

False
0.30000000000000004

부동소수점 계산은 근삿값을 사용하므로 정밀도가 제한됩니다. 정확한 계산이 필요할 경우 decimal 모듈을 사용할 수 있습니다.


8. math 모듈을 활용한 고급 연산

주요 함수

import math

# 제곱근
print(math.sqrt(16))

# 올림, 내림
print(math.ceil(4.2))  # 올림
print(math.floor(4.8)) # 내림

# 삼각 함수
print(math.sin(math.pi / 2))
print(math.cos(0))

결과:

4.0
5
4
1.0
1.0

math 모듈은 제곱근, 올림/내림, 삼각 함수 등 고급 수학 연산을 제공합니다.


9. 실수 활용 예제

소수점 아래 자리수 제한 출력

num = 123.456789
print(f"{num:.2f}")  # 소수점 둘째 자리까지 출력

결과:

123.46


실수 값 범위 확인

def check_value(value):
    if value == float("inf"):
        return "Infinity"
    elif value == float("-inf"):
        return "Negative Infinity"
    elif math.isnan(value):
        return "NaN"
    else:
        return "Finite value"

print(check_value(float("nan")))
print(check_value(float("inf")))
print(check_value(123.45))

결과:

NaN
Infinity
Finite value


요약: 실수는 정밀하게, 하지만 조심스럽게!

  • 실수 생성: 정수나 문자열을 float()로 변환하여 생성 가능.
  • 반올림과 절댓값: round()와 abs()를 사용.
  • 정밀도 주의: 부동소수점 계산은 근삿값을 사용하므로 정밀도가 제한될 수 있음.
  • 무한대와 NaN: float("inf")와 float("nan")으로 표현 가능.

파이썬의 실수는 부동소수점 연산을 지원하여 유연하고 강력한 도구로 활용될 수 있지만, 정밀도 문제를 염두에 두고 사용해야 합니다. 🚀

반응형
Posted by 녹두장군1
,