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