아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
단단한홍여새209
단단한홍여새20920.09.02

%04d 와 %02d 가 뭔가요?

파이썬 기초 문제를 풀고 있었는데 %04d 와 %02d 를 쓰라고 나왔는데 이게 무엇인지 모르겠습니다

검색해도 어렵게 설명되어 있는데 간단하게 무엇이고, 어떤상황에 사용하는지 궁금합니다

55글자 더 채워주세요.
답변의 개수
6개의 답변이 있어요!
  • %04d, 여기서 d는 정수값을 나타내고 d앞에는 자리수와 채움문자를 넣을 수 있습니다.

    %04d, 0으로 시작하는 네자리 정수로 표현

    %02d, 0으로 시작하는 두 자리 정수로 표현

    예제로 알려드릴께요.

    %02d, 입력:20, 출력: 20 %04d, 입력:20, 출력: 0020 %06d, 입력:20, 출력: 000020

    일반적으로 파일이름을 지정할때 파일이름순서대로 폴더를 잘 정리하고 싶을때 어린식으로 자릿수를 지정해놓고 숫자를 채워넣습니다. 예로, 1.png, 2.png, 11.png 이런식으로 파일이 있다고 하면, 원하는 순서는 1,2,11순인데 실질적으로는 1,11,2순으로 정렬이 됩니다. 자리수를 정해놓으면 001,002,011이런식으로 잘 정렬됩니다.


  • 안녕하세요.

    간단한 실행결과를 보시면 쉽게 이해가 되십니다.

    a=4 print ('%04d' %a) print ("%02d" %a)

    0004 04

    첫번째의 의미는 자리수가 4미만인경우 나머지를 0으로 채우란 의미입니다. 두번째는 2자리 미만인경우 나머지를 0으로 채우는거구요..

    그래서..

    a=123 print ('%04d' %a) print ("%02d" %a)

    이렇게 코드를 바꾸어 보면

    0123 123

    첫번째는 4자리 미만이어서 0으로 채웠지만, 두번째는 2자리 미만이 아니니 그냥 있는 그대로 출력을 합니다.

    다시 정리하면

    0xd 는 출력하는 숫자가 x보다 자릿수가 작으면, 그 자리를 0으로 매꾸어주는 역할을 합니다.


  • 파이썬에서 문자열 포맷팅을 하기 위한 문법입니다.

    %04d의 경우 4자리의 숫자를 표시하는데 4자리 숫자가 되지 않을 경우 0으로 채운다는 뜻입니다.

    예를 들어 1234 값을 표시 할때는 1234 값이 출력이 됩니다.

    하지만 값이 4자리 이하 일경우 12라는 값을 출력 하게 되면 0012값이 출력이 됩니다.

    %02d도 같은 방법입니다.

    12를 출력 한다면 12가 출력되지만 1을 출력 할때 01로 출력을 하겠다는 문법 입니다.

    여러가지 방법으로 사용할 수 있어 지금 당장 떠오르는 사용 방법은 날짜 포멧팅 할때 사용할 수 있을 것같습니다.

    예를 들어 2020-10-10의 경우 출력에는 문제가 없지만 2020-9-2 이렇게 출력되기 때문에 아래처럼 사용할 수 있을 것 같습니다.

    print("%d-%d-%d % 2020, 9, 2") // 2020-9-2 print("%d-%d-%d % 2020, 10, 10") // 2020-10-10 print("%04d-%02d-%02d % 2020, 9, 2") // 2020-09-02 print("%04d-%02d-%02d % 2020, 10, 10") // 2020-10-10


  • 안녕하세요~! 아하(Aha) 지식답변자 다라닝입니다.

    질문하신 내용에 대하여 아래와 같이 답변 드립니다.

    %04d는 한마디로 4자리로 자릿수를 맞추겠다는 의미입니다

    %02d는? 2자리로 자릿수를 맞추겠다는 의미죠!

    부족하지만 도움이 되셨기를 바라며 추가적인 문의가 필요하시면 답변 부탁드려요!


  • 개발을 하다보면 약속된(?) 문자열 형식(format)에 맞춰 데이터를 다루거나 출력해야 하는 경우가 생깁니다.

    예를 들어 1시 5분 7초를 문자열로 표현할 때, '1:5:7'가 아닌 '01:05:07'로 만들어 주는 거죠. 이런 경우에 쓰입니다.

    '%04d'는 출력 형식을 최소 4자리로 맞추면서 4자리보다 짧을 때엔 빈 공간을 '0' 값으로 채워주고 싶을 때 씁니다.

    '%04d' % 1 # '0001'

    '%04d' % 11 # '0011'

    '%04d' % 11111 # '11111' , 4자리 보다 긴 경우엔 무시됨.

    빈 공간을 공백으로 두고 싶을 때엔 '0'을 뺀 '%4d'를 쓰면 되고요. 자릿수는 '%5d', '%6d' 식으로 바꾸어줄 수 있습니다.


  • 안녕하세요,

    python의 print 함수는 사용자의 변수를 출력하는 다양한 방법을 제공하고 있습니다.

    그 중의 한가지 방법으로 % 연산자가 있습니다.

    %는 해당 위치에 특정 변수를 넣기 위해 사용합니다.

    예를 들어, print('내 나이는 %d 살이야.' % 1) 구문에서 %d 위치에는 1 값이 들어가게 됩니다.

    %d는 숫자(decimal) 을 넣겠다라는 의미입니다.

    사람들은 자리수를 맞춰서 보여주고 싶은 욕구가 많이 있기 때문에, 자리수를 맞추는 기능도 있습니다.

    %4d는 숫자를 넣는데 4자리로 맞춰서 넣어줍니다.

    %04d는 숫자를 넣는데, 4자리로 맞춰서 넣어달라. 만약에 비면 숫자 0을 채워달라는 뜻 입니다.

    같은 원리로 %02d는 숫자를 넣는데, 2자리로 맞추고 빈 곳에 0을 넣게 됩니다.

    감사합니다.