편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2022.10.11

    문자열 포맷팅 고급 용법에 대한 질문


    '''
           3
    x     12
    --------
          36
    '''
    

    이 식을 코드로 표현하기 위해 다양히 시도해보고 있습니다. 제가 시도 해본 것들은 아래 네개 입니다

    #try1
    
    a=3
    b=12
    print('%8d' %a)
    print('%-6s%-1d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    
    #try2
    
    a=3
    b=12
    print('%8d' %a)
    print('%-5s %-1d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    
    #try3
    
    a=3
    b=12
    print('%8d' %a)
    print('%s %6d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    
    #try4
    
    a=3
    b=12
    print('%8d' %a)
    print('%s%7d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    

    마이너스 부호를 넣어서 포맷팅하면 숫자(%-6d에서 -6) 들의 절댓값이 7인 반면에 -를 넣지 않고 포맷팅하면 숫자들의 절댓값이 8입니다.

    • 마이너스 부호 투입의 여부와 상관없이 두개의 절댓값, 즉 칸 수는 같아야 하는 것 아닌가요?

    왜 두개가 다른지 모르겠습니다 알려주시면 감사하겠습니다!

  • 프로필 jeongwonbahk님의 편집
    날짜2022.10.10

    문자열 포맷팅 고급 용법에 대한 질문


    '''
           3
    x     12
    --------
          36
    '''
    

    이 식을 코드로 표현하기 위해 다양히 시도해보고 있습니다. 제가 시도 해본 것들은 아래 네개 입니다

    #try1
    
    a=3
    b=12
    print('%8d' %a)
    print('%-6s%-1d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    
    #try2
    
    a=3
    b=12
    print('%8d' %a)
    print('%-5s %-1d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    
    #try3
    
    a=3
    b=12
    print('%8d' %a)
    print('%s %6d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    
    #try4
    
    a=3
    b=12
    print('%8d' %a)
    print('%s%7d'%('x',b))
    print('--------')
    print('%8d'%(a*b))
    

    마이너스 부호를 넣어서 포맷팅하면 숫자(%-6d에서 -6) 들의 절댓값이 7인 반면에 -를 넣지 않고 포맷팅하면 숫자들의 절댓값이 8입니다.

    마이너스 부호 투입의 여부와 상관없이 두개의 절댓값, 즉 칸 수는 같아야 하는 것 아닌가요?

    왜 두개가 다른지 모르겠습니다 알려주시면 감사하겠습니다!