[Python] 파이썬, 문자열 포맷팅 하기(format 함수)

    문자열을 내가 원하는 형태로 출력하고 싶을 경우 format 함수를 이용해서 구현할 수 있으며 format 함수는 기능이 크게 2가지가 있다. 첫째 포맷안에 있는 값을 다른 방식으로 출력하고 싶은 경우 (ex: 천단위에 콤마를 붙인다던지) 둘째 %d 처럼 해당 위치에 값을 대입하는 것이다.

     

    파이썬의 format 함수로 문자열 포맷팅하기

     

    값 대입 사용법

    중괄호가 포함된 문자열.format(값들)

    사용법은 문자열 내부에 중괄호 {}가 존재하며, 문자열 이후 format() 펑션에 중괄호에 맞는 값들을 입력하면 된다.

    예시

    기본적인 방법

    print('숫자 : {}, 실수 : {}'.format(5, 0.5))
    
    # 숫자 : 5, 실수 : 0.5

    위와 같이 숫자와 실수를 매우 자유롭게 입력할 수 있다.

     

    인덱스 부여

    print('실수 : {1}, 숫자 : {0}, 문자열 : {2}'.format(5, 0.5, '홍길동'))
    
    # 실수 : 0.5, 숫자 : 5, 문자열 : 홍길동

    중괄호 안에 인덱스값을 입력하면 해당 위치에 있는 인자값이 출력된다. 위 예시에서는 실수에 두번째 인덱스 숫자에 첫번째 인덱스 값을 지정한 것을 알 수 있다.

    변수 지정

    print('실수 : {a}, 숫자 : {b}, 문자열 : {c}'.format(a=0.1, b=100, c='삼성전자'))
    
    # 실수 : 0.1, 숫자 : 100, 문자열 : 삼성전자

    중괄호 안에 변수명을 지정하고, format에 변수와 값을 입력받아 호출할 수도 있다. 위 예시에서는 a,b,c 변수에 각각 0.1, 100, 삼성전자를 대입시키고 그것이 출력된 것을 확인할 수 있다.

     

    포맷 변경법

    format(값, 바꾸고 싶은 형식)

    개발자들에게 format이란 형식을 변경하는 것을 말한다. 

     

    대표적으로 숫자에 천단위로 콤마를 넣는 포맷을 변경하고 싶을 경우

    a = format(10000, ",")
    print(a)
    
    # 10,000

    이와 같이, format에 값과 바꾸고 싶은 형식을 입력한다.

     

    형식에 대해서 궁금하면 아래의 사이트의 Formatting Types를 보도록 한다.

    www.w3schools.com/python/ref_string_format.asp

     

    Python String format() Method

    Python String format() Method ❮ String Methods Example Insert the price inside the placeholder, the price should be in fixed point, two-decimal format: txt = "For only {price:.2f} dollars!" print(txt.format(price = 49)) Try it Yourself » Definition and

    www.w3schools.com

     

    그리고 format 변경법은 값 대입 방식과 결합할 수도 있다.

    text = "당신을 위해 {price:,}원을 준비했어요."
    print(text.format(price = 10000))
    
    # 당신을 위해 10,000원을 준비했어요.

    이렇게 대괄호 앞에 {} 괄호를 넣고, 해당 위치에 변수와 포맷팅할 형식을 지정하면 값이 변경되어 출력된다.

     

     

    반응형

    댓글

    Designed by JB FACTORY