문자열 미화 또는 Python에서 문자열 형식을 지정하는 방법

파이썬에서 문자열을 형식화하는 두 가지 방법이 있습니다. 이 상황은 Python 3.6이 f-strings의 출현과 함께 나올 때까지 계속되었습니다. 오늘은 모든 서식 지정 방법에 대해 논의하고 사용 예를 들어 보겠습니다.

이 기사는 Google 번역을 사용하여 폴란드어에서 번역되었습니다. 원본 게시물은 내 블로그https://blog.budzynskimaciej.pl에서 찾을 수 있습니다.

우리가 작업할 코드



사용 가능한 각 형식 지정 방법을 사용하여 표시하려고 시도할 몇 가지 간단한 변수를 사용할 것입니다.

first_name = "John"
last_name = "Doe"
born_year = 1978
current_age = 40
dict = {'text':'One', 'value': 1}


'%' 기호가 있는 이전 서식



이 형식은 오랫동안 파이썬에 있었습니다. 현재 이 방법은 몇 가지 단점이 있고 튜플 및 목록 표시에 문제를 일으킬 수 있으므로 Python 설명서에서 권장하지 않습니다. 다음은 이 형식을 사용하는 예입니다.

print("Hello %s %s. Your born year is %d. You are %d years old", first_name, last_name, born_year, current_age)


%s은 무슨 뜻인가요? 문자열을 읽고 싶다고 인터프리터에게 알립니다. 사용 가능한 수정자:
  • %s - 문자열(또는 repr 메서드가 있는 객체, 예: 배열)
  • %d - 정수
  • %f - 부동 소수점 숫자
  • %.(X) - 정밀도가 X 십진수인 부동 소수점 숫자
  • %X - 16진수 표기법으로 표현되는 정수

  • str.format()으로 포맷



    이 옵션은 Python 2.6에서 도입되었습니다. 이것은 %-formatting에 비해 향상된 형식입니다. str.format() 덕분에 대체하려는 필드는 {} 문자로 표시됩니다. 예시:

    print("Hello {2} {3}. Your born year is {1}. You are {0} years old.".format(current_age, born_year, first_name, last_name))
    


    압축을 풀어 사전의 내용을 표시할 수도 있습니다.

    print("{text} is {value}.".format(**dict))
    


    Python 3.6의 새로운 방식 또는 f-Strings



    f-Strings의 도입으로 서식 지정이 훨씬 쉬워졌습니다. 예시:

    print(f"Hello {first_name} {last_name}. Your born year is {born_year}. You are {current_year} years old")
    


    그게 전부입니다. f-문자열은 런타임에 실행됩니다. 이전에 {}에서 정의한 변수를 입력하기만 하면 됩니다. 다음과 같은 표현식을 사용할 수도 있습니다.

    print(f"{2 * 6}")
    


    이 코드는 표현식 2 * 6의 값인 12를 출력합니다. 함수를 호출할 수도 있습니다.

    name = "jane"
    print(f"{name.capitalize()}")
    


    위의 코드는 Jane 텍스트를 표시합니다. 사전의 내용도 표시할 수 있습니다.

    print(f"{dict['text']} is {dict['value']}.")
    


    보시다시피 f-String은 생산성을 높이고 코드를 가리지 않기 때문에 사용할 가치가 있습니다. 또한 %-Strings 및 str.format() 보다 실행 속도가 약간 더 빠릅니다.

    좋은 웹페이지 즐겨찾기