작성
·
355
0
코드를 다음과 같이했을때,
print('%1.4f' % (3.141592))
정수부분은 1자리수까지만 나오고 소수부분은 4자리까지만 나온다고 강의를 해주셨는데요,
위 코드를 아래와 같이 정수부분을 3자리까지 나오게끔 코드를 작성하였는데도,
print('%3.4f' % (3256.141592))
4자리 정수가 모두 나왔습니다. 1,2,3,4,5를 번갈아가면서 입력해도 4자리 정수가 모두 나왔구요.
앞에서 의미하는 정수부분을 제가 잘 못 이해한걸까요?
앞에서 말하는 정수부분의 자릿수가 어떤개념인지 궁금합니다.
답변 2
0
안녕하세요! '%3.4f' 에서 3은 전체너비를 뜻하는게 아니라 최소 전체 너비를 뜻합니다! 그니까 정수가 전부 출력이 되고 뒤에 소수 4개가 출력되는 거예요!
예를들어 print('%13.4f' % (3256.141592))라면 이것은 최소 넓이 13이라는 것이 그렇다면 출력시 3256.1416 (4칸 앞에 띄고) 이런식으로 나오는 거죠!!
그렇다면 print('%6.4f' % (3256.141592))랑 print('%3.4f' % (3256.141592)) 는 그 결과값이 같겠네요!
0
안녕하세요! 열심히 하시네요!
아래 내용처럼 이해하시면 될 것 같습니다. . 을 기준으로 앞자리는 정수부, 뒷자리는 소수부 입니다.
print('%1.8f'%(3.143434343434))
: 정수부1자리, 소수부 8자리
-> 3.143434343
여기서
print('%2.8f'%(1152.143434343434)) 이런식으로 입력했을 때,
정수부분은 1152가 모두 출력이됩니다.
왜그런걸까요??