Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python:소수점 이하 두 자리로 반올림하는 방법

Python에서 값을 소수점 이하 두 자리로 반올림하는 방법은 무엇입니까? 훌륭한 질문입니다. 운 좋게도 Python은 숫자를 반올림할 수 있는 몇 가지 기능을 제공합니다.

숫자를 소수점 이하 두 자리로 반올림하는 것이 일반적입니다. 돈은 소수점 이하 두 자리만 사용합니다. 소수점 세 번째 자리로 금전적 가치를 처리하고 싶지 않습니다. 가중치는 종종 소수점 이하 두 자리로 표시됩니다. 추가 값은 대부분의 경우 필요하지 않은 추가 정밀도를 위한 것입니다.

이 가이드에서는 Python에서 숫자를 소수점 이하 두 자리로 반올림하는 방법에 대해 설명합니다. 자신의 코드에서 숫자를 반올림하는 방법을 배우는 데 도움이 되는 두 가지 코드 스니펫을 살펴봅니다.

round()를 사용한 반올림

친구 그룹의 각 친구가 저녁 식사를 위해 지불해야 하는 금액을 계산하는 프로그램을 작성해야 합니다. 사용자에게 식사 비용과 친구 수를 입력하도록 요청하는 것으로 시작합니다.

meal_cost = input("How much did your meal cost? ")
friends = input("How many friends were with you? ")

다음으로, 각 친구가 저녁 식사를 위해 얼마를 지불해야 하는지 계산해 보겠습니다. 우리는 각 친구가 주문한 것과 상관없이 동일한 금액을 지불해야 한다고 가정합니다.

cost_per_friend = float(meal_cost) / float(friends)

"meal_cost"와 "friends"를 부동 소수점 숫자로 변환했습니다. input() 메서드는 문자열을 반환합니다. Python의 수학 연산자를 사용하여 문자열 값에 대해 수학 계산을 수행할 수 없습니다.

이제 이 값을 소수점 이하 두 자리로 반올림해 보겠습니다. round()를 사용합니다. 방법. round() 메서드. 값을 가장 가까운 정수 또는 가장 가까운 소수 자릿수로 반올림할 수 있습니다.

또한 각 친구가 저녁 식사에 기여해야 하는 금액을 콘솔에 인쇄합니다.

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

rounded_value = round(cost_per_friend, 2)

print("Each friend must pay $" + str(rounded_value) + " for dinner.")

내장된 round()를 사용했습니다. "cost_per_friend" 값을 소수점 이하 두 자리로 반올림하는 함수입니다. 다음으로, 우리는 콘솔에 출력할 메시지를 생성하기 위해 문자열 연결을 사용했습니다. 이 메시지는 각 친구가 저녁 식사를 위해 얼마를 지불해야 하는지 알려줍니다.

코드를 실행하여 함수가 작동하는지 확인하세요.

How much did your meal cost? 64.92
How many friends were with you? 6
Each friend must pay $10.82 for dinner.

숫자를 반올림하지 않고 64.92를 6으로 나누었다면 소수가 많은 숫자를 보았을 것입니다. 우리 코드는 나눗셈의 결과를 소수점 이하 두 자리까지 반올림하여 각 친구가 저녁 식사를 위해 $10.82를 지불해야 한다고 계산합니다.

문자열 형식을 사용하여 숫자 반올림

마지막 예에서는 문자열에 반올림된 숫자를 표시했습니다. 숫자의 유일한 목적이 문자열로 표시되는 것이라면 숫자를 반올림하는 또 다른 방법이 있습니다. 이 방법은 Python 3.x에서만 지원됩니다.

.format()을 사용하여 각 친구가 저녁 식사를 위해 지불해야 하는 값을 반올림하도록 코드를 수정합니다. 문자열 형식화 구문.

각 친구가 지불해야 하는 금액을 계산하는 것으로 시작합니다.

meal_cost = input("How much did your meal cost? ")
friends = input("How many friends were with you? ")

cost_per_friend = float(meal_cost) / float(friends)

다음으로 print()를 작성합니다. 각 친구가 저녁 식사를 위해 지불해야 하는 금액을 알려주는 명세서. .format()을 사용합니다. print()를 사용한 문 성명. 이렇게 하면 문자열 내의 값 형식을 지정할 수 있습니다.

print("Each friend must pay ${:0.2f} for dinner.".format(cost_per_friend))

.format() 문은 다음 구문을 사용하여 두 자리로 반올림되는 숫자의 10진수 표현을 만듭니다.

{:0.2f}

콜론(:)은 값의 형식을 지정하려는 코드를 알려줍니다. 0은 우리가 0으로 채워질 수 있는 숫자를 다루고 있다는 것을 파이썬이 인식하도록 하는 데 사용됩니다. .2는 파이썬이 숫자를 소수점 이하 두 자리로 반올림하도록 지시합니다. "f"는 값을 숫자로 나타냅니다.

코드를 실행하고 어떤 일이 일어나는지 봅시다:

How much did your meal cost? 64.92
How many friends were with you? 6
Each friend must pay $10.82 for dinner.

우리 코드는 각 친구가 저녁 식사를 위해 지불해야 하는 금액을 성공적으로 계산합니다. 결과는 첫 번째 코드 조각과 동일합니다. 숫자 데이터가 소수점 이하 두 자리로 반올림되었음을 나타내는 소수점 뒤에 두 자리가 있습니다.

이 방법은 콘솔에 값을 출력하기만 하면 되므로 첫 번째 코드 조각보다 더 효율적입니다. 이 코드에서는 round()를 사용하지 않았습니다. 성명.

코드에서 반올림된 값을 더 사용하려는 경우 문자열 형식 지정 구문이 비실용적입니다.

결론

값을 소수점 이하 두 자리로 반올림하는 가장 일반적인 방법은 다음과 같습니다.

  • round() 메서드를 사용하려면
  • 문자열 서식을 사용하려면

첫 번째 방법은 숫자를 반올림해야 하는 경우에 좋습니다. 두 번째 방법은 문자열에서 사용할 값을 반올림하려는 경우와 Python 3.x를 사용하는 경우에만 작동합니다.

이제 Python 전문가처럼 코드에서 소수점 이하 두 자리까지 값을 반올림할 준비가 되었습니다!