파이썬에서 부동 숫자를 문자열로 포맷하기

Ankur Baral 2023년1월30일
  1. 형식 사양 및format()메서드를 사용하여 부동 숫자를 고정 너비로 ​​형식 지정
  2. 목록의 부동 숫자를 고정 너비로 ​​서식 지정
  3. Python에서%연산자를 사용하여 너비를 고정하도록 부동 숫자 형식 지정
  4. 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 자리로 반올림되었습니다. 방법.

관련 문장 - Python Float