반응형
질문
다음 요구 사항을 충족시키기 위해 부동 소수점을 고정 너비로 형식화하는 방법은 무엇인가요:
- n < 1인 경우 선행 0 추가
- 고정 너비를 채우기 위해 소수점 뒤에 0 추가
- 고정 너비를 초과하는 소수 자릿수는 절삭
- 모든 소수점을 정렬
예를 들어:
% formatter something like '{:06}'
numbers = [23.23, 0.123334987, 1, 4.223, 9887.2]
for number in numbers:
print formatter.format(number)
출력은 다음과 같을 것입니다.
23.2300
0.1233
1.0000
4.2230
9887.2000
답변
numbers = [23.23, 0.1233, 1.0, 4.223, 9887.2]
for x in numbers:
print("{:10.4f}".format(x))
출력 결과
23.2300
0.1233
1.0000
4.2230
9887.2000
중괄호 안의 포맷 지정자는 파이썬 포맷 문자열 구문을 따릅니다. 특히, 이 경우에는 다음과 같은 부분으로 구성됩니다:
- 콜론(:) 뒤의 빈 문자열은 "다음으로 제공된 인수를
format()
에 사용"을 의미합니다 - 이 경우에는 유일한 인수로서의x
입니다. - 콜론(:) 뒤의
10.4f
부분은 포맷 지정입니다. f
는 고정 소수점 표기법을 나타냅니다.10
은 출력되는 필드의 총 너비로, 왼쪽에 공백으로 채워집니다.4
는 소수점 이하의 숫자 자릿수입니다.
반응형
댓글