inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

format 함수 질문

해결된 질문

100

불꽃남자

작성한 질문수 2

0

 1. 아래 두 줄의 출력값이 동일한데 무슨 차이인지 모르겠습니다.

print('{:10f}'.format(3.141592))
print('{:10}'.format(3.141592))

 

2. 문자는 부등호를 생략하면 왼쪽으로 몰리는 반면, 정수의 경우는 >를 사용하나 생략하나 둘 다 오른쪽으로 몰려서 출력되는 이유가 궁금합니다.

print('{:4d}'.format(42))
print('{:10}'.format('nice'))

감사합니다.

python

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 불꽃남자님.
두 가지 질문에 대한 간단한 설명을 드리겠습니다.

  1. format 함수의 사용 차이:

    • '{:10f}'.format(3.141592): 여기서 10f는 ‘소수점 포함 총 10자리로 소수를 포맷하라’는 의미입니다. 소수점 이하 기본 6자리가 표시됩니다.
    • '{:10}'.format(3.141592): 여기서 10은 넓이 10의 공간을 고려한 출력입니다. 기본적으로 소수점 이하 숫자는 조정되지 않고 전체 숫자가 10칸을 차지하도록 정렬됩니다.
  2. 문자와 숫자의 정렬 차이:

    • 파이썬의 format 함수에서 부등호(<, > 등)의 사용을 생략한 경우, 숫자는 기본적으로 오른쪽 정렬이 됩니다. 이는 일반적인 숫자 출력의 관례 때문이며, 문자는 기본적으로 왼쪽 정렬이 됩니다.
    • '{:4d}'.format(42): 정수가 오른쪽으로 정렬되고 총 4칸을 사용합니다.
    • '{:10}'.format('nice'): 문자열이 기본적으로 왼쪽 정렬되며, 총 10칸을 사용하되 나머지는 빈 공간으로 남습니다.

이러한 포맷팅 방식은 데이터의 취급 방식이기 때문에 의도적으로 정렬을 변경하실 때만 > 또는 <을 명시적으로 사용하시면 됩니다.

아래 유사한 질문과 답변들을 참고하시면 더 도움이 될 것 같습니다:
- “파이썬 String Formatting에 대한 질문”

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

자료 다운로드 위치 확인 부탁드립니다.

0

14

1

보라색 예약어

0

21

1

#을 붙이는 이유

0

19

1

실행이 안 되는데요.

0

19

1

print 문법 실행 안 돼요.

0

21

1

영문 계정

0

21

1

맥북에서 아이패드로 연결해서 보려고 하면 화면이 안뜹니다.

0

13

1

인스턴스 변수 문의

0

58

1

챕터 03_04 (튜플) 교육자료

0

58

2

Package(3-1) Sub 폴더 자료

0

48

1

아톰 출력 안됨

0

85

2

강의자료 메일 발송 요청 드립니다.

0

95

1

강의자료 메일로 보내주실 수 있으실까요?

1

59

0

Iterable 요소는 리스트로 작성해야하는 것 맞나요?

1

83

2

강의자료 부탁드립니다

0

77

2

if Flase: print('Bad')

0

76

1

=와 == 의 차이

0

96

1

functions 함수 섭들을려고하는데요

0

74

1

강의자료 부타드리겠습니다!

0

63

0

VSCODE에 VIEW에서 SELECTED INTERPRETER조회가 안됩니다.

0

72

1

강의자료 부탁드립니다.

0

59

0

dict의 Key를 바꾸는 방법

0

83

1

강의자료부탁드립니다

0

72

1

run withount 디버깅 및 F5+ctrl이 안먹혀요

0

69

1