파이썬에서 부동 숫자를 문자열로 포맷하기
-
형식 사양 및
format()
메서드를 사용하여 부동 숫자를 고정 너비로 형식 지정 - 목록의 부동 숫자를 고정 너비로 서식 지정
-
Python에서
%
연산자를 사용하여 너비를 고정하도록 부동 숫자 형식 지정 -
Python에서
round()
함수를 사용하여 부동 숫자를 고정 너비로 포맷
이 기사에서는 Python에서 부동 숫자를 고정 너비로 형식화하는 몇 가지 방법을 소개합니다.
형식 사양 및format()
메서드를 사용하여 부동 숫자를 고정 너비로 형식 지정
여기서는 형식 지정을 통한 일반적인 형식 지정 프로세스를 사용하여 부동 숫자의 너비를 수정합니다.
num
변수를 만들고 여기에 부동 숫자를 할당합니다. 그런 다음 필요한 형식으로 부동 숫자를 인쇄합니다. 결과를 얻기 위해format()
함수를 사용할 것입니다.
예제 코드 :
# python 3.x
num = 0.02893574
print("{:.4f}".format(num))
출력:
0.0289
여기서.4f
는 형식 사양이라고하며, 이는 출력이 소수점 뒤에 네 자리 만 표시되어야 함을 나타냅니다. 대신.5f
를 사용하면 소수점 뒤에 최대 5 자리가 표시됩니다. 콜론:
앞의 빈 문자열은format()
함수에 제공된 인수가 해당 위치를 차지하도록 배치됩니다. 위의 프로그램에서 우리가 제공 한 인수는num
입니다. 따라서num
에있는 값은:
앞의 빈 문자열로 전달되고 그에 따라 형식이 지정됩니다.
Python 3.6에서는f'{}'
를 사용하여 동일한 출력을 얻을 수도 있습니다.
# python 3.x
num = 0.02893574
print(f"{num:.4f}")
출력:
0.0289
목록의 부동 숫자를 고정 너비로 서식 지정
유사한 구문을 사용하여 부동 숫자의 너비를 소수점 뒤의 특정 숫자까지 고정합니다.
먼저 여러 부동 숫자가있는 목록을 만듭니다. 그런 다음 for 루프를 사용하여 목록에서 모든 항목을 가져와 그에 따라 형식을 지정합니다. 변수numbers
를 사용하여 목록 내의 숫자를 나타냅니다. 소수점 뒤에 고정 된 자릿수를 사용하여 목록에있는 부동 숫자를 하나씩 인쇄합니다.
예제 코드 :
# python 3.x
list = [18.292164, 52.452189, 999.1212732]
for numbers in list:
print("{:.3f}".format(numbers))
출력:
18.292
52.452
999.121
위 코드에서 목록의 각 숫자는for
루프 내에서 하나씩 전송됩니다. 목록의 첫 번째 요소, 즉list[0]
이 변수numbers
에 지정되고 형식화 된 값 즉,18.293
이 인쇄됩니다. 소수점 이하 3 자리까지의 숫자를 나타내는.3f
를 실행했기 때문입니다. 마찬가지로, 두 번째 요소list[1]
및 세 번째list[2]
도 변수numbers
로 루프에 전달되고 그에 따라 인쇄됩니다.
이 프로그램은 목록의 모든 요소가 실행될 때까지 실행됩니다.
f'{}'
사용 :
예제 코드 :
아래 목록에는 위 프로그램과 동일한 항목이 포함되어 있습니다. 이 예제에서는format()
함수 대신f'{}'
를 사용합니다.
# python 3.x
list = [18.292164, 52.452189, 999.1212732]
for numbers in list:
print(f"{numbers:9.3f}")
출력:
18.292
52.452
999.121
f'{}'
를 사용했을 때 출력을 얻었을 때 알 수 있습니다. 또한 정렬 된 방식으로 원하는 출력을 얻었습니다. 같은 이유로 소수점 뒤의 부동 자릿수를 정렬하려면 일반적으로f'{}'
를 사용하는 것이 좋습니다.
Python에서%
연산자를 사용하여 너비를 고정하도록 부동 숫자 형식 지정
%v
연산자를 사용하여 부동 숫자에 대해 고정 너비를 설정할 수도 있습니다. 코드는 C 프로그래밍의printf()
함수와 유사 할 수 있습니다.
변수num
에 부동 숫자를 할당하고 고정 너비까지 십진수로num
의 값을 인쇄합니다. 형식 지정자%.4f
를 사용하여num
값을 print 문에 전달하는 동안%num
을 사용하고 있습니다. num
앞에%
가 없으면 구문 오류가 발생합니다.
예제 코드 :
# python 3.x
num = 0.02893574
print("%.4f" % num)
출력:
0.0289
여기서%num
을 사용하면 함수 나 문자열 형식화없이 원하는 값을 인쇄 할 수 있습니다.
Python에서round()
함수를 사용하여 부동 숫자를 고정 너비로 포맷
round()
함수를 사용하여 소수점 뒤의 자릿수를 수정할 수도 있습니다. 이 기능은 입력 된 숫자의 소수점 이하 자릿수를 제한합니다. 또한 숫자가5
보다 큰 경우 한계가 상위 적분 값으로 설정된 숫자를 반올림합니다.
부동 소수점 숫자를 가져와 변수num
에 할당 해 봅시다. 인쇄 할 때round()
함수를 사용하여 소수점 이하 자릿수를 제한합니다.
예제 코드 :
# python 3.x
num = 2.37682
print(round(num, 3))
출력:
2.377
round 함수의 구문은round(number, digits)
입니다. 여기서number
인수는 필수이며 인수digits
는 선택 사항입니다. number
도 변수로 넣을 수 있습니다. 인수digits
에 아무것도 전달되지 않으면number
의 정수 부분 만 결과로 사용됩니다.
위의 프로그램에서2.37682
값을 첫 번째 인수num
에 전달하고round()
안의 두 번째 인수에3
값을 전달했기 때문에 소수점 이하 3 자리로 반올림되었습니다. 방법.