format 함수 질문
1. 아래 두 줄의 출력값이 동일한데 무슨 차이인지 모르겠습니다.
print('{:10f}'.format(3.141592))
print('{:10}'.format(3.141592))
2. 문자는 부등호를 생략하면 왼쪽으로 몰리는 반면, 정수의 경우는 >를 사용하나 생략하나 둘 다 오른쪽으로 몰려서 출력되는 이유가 궁금합니다.
print('{:4d}'.format(42))
print('{:10}'.format('nice'))감사합니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 불꽃남자님.
두 가지 질문에 대한 간단한 설명을 드리겠습니다.
format함수의 사용 차이:'{:10f}'.format(3.141592): 여기서10f는 ‘소수점 포함 총 10자리로 소수를 포맷하라’는 의미입니다. 소수점 이하 기본 6자리가 표시됩니다.
'{:10}'.format(3.141592): 여기서10은 넓이 10의 공간을 고려한 출력입니다. 기본적으로 소수점 이하 숫자는 조정되지 않고 전체 숫자가 10칸을 차지하도록 정렬됩니다.
문자와 숫자의 정렬 차이:
- 파이썬의
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





