• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

%f 질문 입니다.

22.06.06 17:26 작성 조회수 134

0

print('%1.18f ' %(3.14159265358979))
print('%6.2f' %(3.14159265358979))

f 앞에 있는 숫자의 정수부분이 출력되는 값의 총 자리수라고 영상 11:25 에 말씀하셨는데 

그렇게 되면 %1.18f 는 출력되는 값의 총 자리수가 1자리여야 되는 거 아닌가요..?

근데 왜 3.14159265358979 값이 전부 출력되는 건가요..?

 

 

답변 2

·

답변을 작성해보세요.

0

홍성민님의 프로필

홍성민

2023.01.03

혹시 . 까지 자릿수에 포함이 되는건가요??

총 자릿수가 6자리이면 nnn.nnn 이렇게 나와야하지않나요??

여기서 n은 숫자입니다.

0

안녕하세요.

열심히 하시네여!!

자릿수에 대해서 정확하게 다시 예제를 적어드릴께여!

 

print(1234567890) #자릿수를 표현하기 위해서 적음
print('%6d'%(111)) # 6자리를 가진다.
print('%06d'%(111)) # 6자리를 가지고, 빈자리를 0으로 채운다.
print('%6.2f'%(11.123124))  # 총 6자리 가지고 소수점 이하 둘째자리까지 표현
print('%06.2f'%(11.123124))  # 총 6자리 가지고 소수점 이하 둘째자리까지 표현, 빈자리는 0 채움
KEYMON Prod.님의 프로필

KEYMON Prod.

2024.01.29

이런 경우를 보니 %06.2f에서 숫자 0은 채우는 문자의 의미가 아닌거 같은데 선생님 확인 부탁드려요.

print ('{:26.2f}'.format(3.1419577632))
print ('{:26.2f}'.format(1234143.1419577632))
print ('%26.2f' % (3.1419577632))
print ('%26.2f' % (1234143.1419577632))

이렇게 썼더니 숫자 2로 채워지는게 아니고 25칸이 확보되더라고요 ㅎㅎㅎ 그래서 혹시나 해서

 

print ('{:*6.2f}'.format(3.1419577632)) 

print ('{:_6.2f}'.format(1234143.1419577632)) 

print ('%*6.2f' % (3.1419577632)) 

print ('%_6.2f' % (1234143.1419577632))

이렇게 넣었더니 오류났어요. 혹시나 해서 공유해 봅니다.