반응형
파이썬에서 소수점 자리를 원하는 만큼 지정하는 경우가 종종 있다.
따라서 4가지 방법으로 소수점 자리를 지정해 보자.
round() 함수 사용
파이썬에서 주로 반올림할 때 사용하는 함수인 round() 함수를 활용해 소수점 자릿수를 지정할 수 있다.
N = 3.141592
print("원래 값: ", N)
print("소수 첫 번째 자리까지 표기: ", round(N, 1))
print("소수 두 번째 자리까지 표기: ", round(N, 2))
print("소수 세 번째 자리까지 표기: ", round(N, 3))
print("소수 네 번째 자리까지 표기: ", round(N, 4))
# OUTPUT
# 원래 값: 3.141592
# 소수 첫 번째 자리까지 표기: 3.1
# 소수 두 번째 자리까지 표기: 3.14
# 소수 세 번째 자리까지 표기: 3.142
# 소수 네 번째 자리까지 표기: 3.1416
round(실수, 표기할 자리 수) 방식으로 표기할 수 있으며, 자료형은 float이다.
※ 파이썬은 "오사오입"을 적용하고 있어, 5 미만의 숫자는 내림, 5 초과의 숫자는 올림, 그리고 반올림할 자릿수가 5일 때는 5의 앞자리가 홀수인 경우 올림, 짝수인 경우 내린다. 따라서 알고리즘 문제를 풀 때, 주의를 해야 한다.
f-string 사용
파이썬 3.6 버전 이상부터 f-string을 사용하여 소수점 자릿수를 지정할 수 있게 되었다.
N = 3.141592
print(f"원래 값: {N}")
print(f"소수 첫 번째 자리까지 표기: {N: .1f}")
print(f"소수 두 번째 자리까지 표기: {N: .2f}")
print(f"소수 세 번째 자리까지 표기: {N: .3f}")
print(f"소수 네 번째 자리까지 표기: {N: .4f}")
# OUTPUT
# 원래 값: 3.141592
# 소수 첫 번째 자리까지 표기: 3.1
# 소수 두 번째 자리까지 표기: 3.14
# 소수 세 번째 자리까지 표기: 3.142
# 소수 네 번째 자리까지 표기: 3.1416
f-string 사용 방식은 f"{실수: .표기할 자리 수f}" 이다. 해당 자료형은 f-string이기 때문에 문자열(string)이다.
"{}" .format() 함수 사용
파이썬 문자열 포맷팅에 주로 사용하는 format() 함수를 사용해, 소수점 자리 수를 지정할 수 있다.
N = 3.141592
print("원래 값: {}".format(N))
print("소수 첫 번째 자리까지 표기: {: .1f}".format(N))
print("소수 두 번째 자리까지 표기: {: .2f}".format(N))
print("소수 세 번째 자리까지 표기: {: .3f}".format(N))
print("소수 네 번째 자리까지 표기: {: .4f}".format(N))
# OUTPUT
# 원래 값: 3.141592
# 소수 첫 번째 자리까지 표기: 3.1
# 소수 두 번째 자리까지 표기: 3.14
# 소수 세 번째 자리까지 표기: 3.142
# 소수 네 번째 자리까지 표기: 3.1416
형식은 "{index: .표기할 자리 수f}".format(실수) 이다. 해당 자료형은 문자열 포맷팅 이므로, 문자열(string)이다.
format() 함수 사용
"{}" .format()과 비슷한 방식인 format() 함수 활용방식도 다음과 같이 존재한다.
N = 3.141592
print("원래 값: ", N)
print("소수 첫 번째 자리까지 표기: ", format(N, ".1f"))
print("소수 두 번째 자리까지 표기: ", format(N, ".2f"))
print("소수 세 번째 자리까지 표기: ", format(N, ".3f"))
print("소수 네 번째 자리까지 표기: ", format(N, ".4f"))
# OUTPUT
# 원래 값: 3.141592
# 소수 첫 번째 자리까지 표기: 3.1
# 소수 두 번째 자리까지 표기: 3.14
# 소수 세 번째 자리까지 표기: 3.142
# 소수 네 번째 자리까지 표기: 3.1416
format(실수, ".표기할 자릿수f") 형식을 활용해 소수점 자릿 수를 지정할 수 있으며, 자료형은 문자열(string)이다.
728x90
'프로그래밍 언어 > Python' 카테고리의 다른 글
[Python] for문 거꾸로 사용하기 (0) | 2023.08.07 |
---|---|
[Python] 람다(lambda) 함수 (0) | 2022.12.08 |
[Python] 변수, 문자열, 배열 입력 받기 (0) | 2022.11.09 |