logo

Python 문자열 형식 지정 - 문자열 형식을 지정하는 방법은 무엇입니까?

문자열 형식을 사용하면 변수와 값을 결합하여 동적 문자열을 만들 수 있습니다. 이번 글에서는 문자열 형식을 지정하는 5가지 방법에 대해 설명합니다.

더 나은 이해를 위해 예제를 통해 문자열 형식을 지정하는 다양한 방법을 배우게 됩니다. 지금 살펴보겠습니다!



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

문자열 형식 지정을 수행하는 방법에는 다섯 가지가 있습니다. 파이썬

  • % 연산자를 사용하여 형식을 지정합니다.
  • format() 문자열 메소드를 사용하여 형식화합니다.
  • f-문자열이라고 하는 문자열 리터럴로 형식을 지정합니다.
  • 문자열 템플릿 클래스를 사용한 형식 지정
  • center() 문자열 메소드를 사용하여 형식화합니다.

따라서 위에서 언급한 방법 전체를 살펴보고 어떤 문자열 형식 지정 전략이 가장 좋은지에 대해서도 중점적으로 살펴보겠습니다.

1. % 연산자를 사용하여 문자열 형식을 지정하는 방법

문자열 형식화의 가장 오래된 방법입니다. 여기서는 모듈로를 사용합니다. % 운영자 . 모듈로 % 문자열 형식화 연산자라고도 합니다.



% 연산자를 사용하는 Python 형식 문자열

The 칙칙하고 앙상한 떠돌이 개 %s gobbled down % 'hurriedly' 표현식에서 문자열 내의 %s 자리 표시자는 'hurriedly' 값으로 대체됩니다.

파이썬3

CSS 코멘트






print>(>'The mangy, scrawny stray dog %s gobbled down'> %>'hurriedly'> +> >'the grain-free, organic dog food.'>)>

>

>

산출

The mangy, scrawny stray dog hurriedly gobbled downthe grain-free, organic dog food.>

모듈로 연산자를 사용하여 여러 문자열 주입

여기서는 % 연산자를 사용하여 여러 문자열을 삽입합니다.

파이썬3




x>=> 'looked'> print>(>'Misha %s and %s around'>%>(>'walked'>,x))>

>

>

산출

Misha walked and looked around>

% 연산자를 사용한 Python의 정밀 처리

부동 소수점 숫자는 다음 형식을 사용합니다. %a.bf . 여기, 문자열에 표시되는 최소 자릿수입니다. 전체 숫자의 자릿수가 이만큼 많지 않으면 공백으로 채워질 수 있습니다.

이 근처에, 친구 소수점 이하 몇 자리까지 표시할지를 나타냅니다.

이 코드에서 'The value of pi is: %5.4f' 문자열에는 형식 지정자 %5.4f가 포함되어 있습니다. %5.4f 형식 지정자는 최소 너비가 5이고 정밀도가 소수점 이하 4자리인 부동 소수점 숫자의 형식을 지정하는 데 사용됩니다.

파이썬3




print>(>'The value of pi is: %5.4f'> %>(>3.141592>))>

>

>

산출

The value of pi is: 3.1416>

다양한 형식 변환 유형

주어진 코드에서 형식화 문자열 Python은 %d,%f를 사용하여 정수 및 부동 소수점으로 변환됩니다.

파이썬3




variable>=> 12> string>=> 'Variable as integer>=> %>d > Variable as>float> => %>f'>%>(variable, variable)> print> (string)>

>

>

문자열을 int로 변환하는 방법
산출

Variable as integer = 12 Variable as float = 12.000000>

메모: %-형식 지정에 대한 자세한 내용은 다음을 참조하세요. %를 사용하여 Python에서 문자열 형식 지정

2. format() 메서드를 사용하여 문자열 형식을 지정하는 방법

Format() 메서드 복잡한 문자열 형식을 보다 효율적으로 처리하기 위해 Python3에 도입되었습니다.

포맷터는 중괄호 { } 쌍으로 정의된 하나 이상의 대체 필드와 자리 표시자를 문자열에 넣고 str.format() . 자리 표시자에 넣고 형식 함수에 매개 변수로 전달된 문자열과 연결하려는 값입니다.

통사론: '여기에 문자열 {}과 {}'.format('something1','something2')

format() 메서드를 사용하여 문자열 Python 형식 지정

이 코드는 {}를 자리 표시자로 사용하고 있으며 자리 표시자와 '같음'에 대해 Called.format() 메서드를 사용합니다.

파이썬3




print>(>'We all are {}.'>.>format>(>'equal'>))>

>

>

산출

We all are equal.>

인덱스 기반 삽입

이 코드에서는 해당 값이 배치될 위치를 나타내기 위해 문자열 '{2} {1} {0}' 내에서 인덱스가 있는 중괄호 {}를 사용합니다.

파이썬3




print>(>'{2} {1} {0}'>.>format>(>'directions'>,> >'the'>,>'Read'>))>

>

>

산출

Read the directions>

키워드를 할당하여 개체 삽입

이 코드에서는 명명된 자리 표시자({a}, {b}, {c})가 있는 중괄호 {}가 문자열 'a: {a}, b: {b}, c: {c}' 내에서 사용되어 다음을 나타냅니다. 해당 명명된 인수가 배치될 위치입니다.

파이썬3




print>(>'a: {a}, b: {b}, c: {c}'>.>format>(a>=> 1>,> >b>=> 'Two'>,> >c>=> 12.3>))>

>

>

산출

a: 1, b: Two, c: 12.3>

삽입된 객체를 재사용

이 코드에서는 이름이 지정된 자리 표시자({p})가 있는 중괄호 {}가 '첫 번째 {p}는 괜찮았지만 {p} {p}는 해당 이름이 지정된 위치를 나타내기 어려웠습니다.'라는 문자열 내에서 사용되었습니다. 인수 p가 배치됩니다.

파이썬3




print>(> >'The first {p} was alright, but the {p} {p} was tough.'>.>format>(p>=>'second'>))>

>

>

산출

The first second was alright, but the second second was tough.>

the.format() 메서드를 사용한 부동 소수점 정밀도

통사론: {[색인]:[너비][.정밀도][유형]}

유형은 형식 코드와 함께 사용할 수 있습니다.

  • '디' 정수의 경우
  • '에프' 부동 소수점 숫자의 경우
  • '비' 이진수의 경우
  • '영형' 8진수의 경우
  • '엑스' 8진수 16진수의 경우
  • '에스' 문자열의 경우
  • '그것은' 지수 형식의 부동 소수점의 경우

예:

두 코드 모두 문자열 형식화를 수행하고 있습니다. 첫 번째 문자열은 '%'로 형식화되고 두 번째 문자열은 .format()으로 형식화됩니다.

파이썬3




센토스 vs 레드햇

print>(>'The valueof pi is: %1.5f'> %>3.141592>)> print>(>'The valueof pi is: {0:1.5f}'>.>format>(>3.141592>))>

>

>

산출

The valueof pi is: 3.14159 The valueof pi is: 3.14159>

메모: str.format()에 대한 자세한 내용은 다음을 참조하세요. Python의 format() 함수

3. Python f-문자열 이해

PEP 498은 리터럴 문자열 보간(Literal String Interpolation) 또는 더 일반적으로 다음과 같이 알려진 새로운 문자열 형식 지정 메커니즘을 도입했습니다. F-현 (문자열 리터럴 앞에 선행 f 문자가 있기 때문에) Python에서 f-String의 기본 아이디어는 문자열 보간을 더 간단하게 만드는 것입니다.

Python에서 f-문자열을 만들려면 문자열 앞에 문자 f를 붙입니다. 문자열 자체는 다음과 같은 방식으로 형식을 지정할 수 있습니다. str.str. 체재() . F-문자열은 형식 지정을 위해 문자열 리터럴 내에 Python 표현식을 포함하는 간결하고 편리한 방법을 제공합니다.

F-문자열을 사용한 문자열 형식화

이 코드에서 f-문자열은 내 이름은 {이름}입니다. name 변수의 값을 문자열에 삽입하는 데 사용됩니다.

파이썬3




문자열 C

name>=> 'Ele'> print>(f>'My name is {name}.'>)>

>

>

산출

My name is Ele.>

이 새로운 형식 지정 구문은 매우 강력하고 쉽습니다. 또한 임의의 Python 표현식을 삽입할 수 있으며 그 안에서 산술 연산도 수행할 수 있습니다.

F-문자열을 사용한 산술 연산

이 코드에서 f-문자열은 f 그는 자신의 나이가 {2 * (a + b)}라고 말했습니다. 2 * (a + b) 표현식의 결과를 문자열에 삽입하는 데 사용됩니다.

파이썬3




a>=> 5> b>=> 10> print>(f>'He said his age is {2 * (a + b)}.'>)>

>

>

산출

He said his age is 30.>

우리는 또한 사용할 수 있습니다 람다 표현 f-문자열 서식 지정.

F-문자열을 사용한 람다 표현식

이 코드에서 익명의 람다 함수는 람다 x: x*2를 사용하여 정의됩니다. 이 람다 함수는 x 인수를 사용하여 해당 double을 반환합니다.

파이썬3




print>(f>'He said his age is {(lambda x: x*2)(3)}'>)>

>

>

산출

He said his age is 6>

f-String 방법의 부동 정밀도

이 코드에서는 f-문자열 형식을 사용하여 num 변수의 값을 문자열에 삽입합니다.

  Syntax  : {value:{width}.{precision}}>

파이썬3




num>=> 3.14159> print>(f>'The valueof pi is: {num:{1}.{5}}'>)>

>

>

산출

The valueof pi is: 3.1416>

메모: f-문자열에 대한 자세한 내용은 다음을 참조하세요. Python의 f-문자열

문자열을 int로 변환하는 방법

4. Python 문자열 템플릿 클래스

문자열 모듈에서 템플릿 클래스를 사용하면 출력 사양을 위한 단순화된 구문을 만들 수 있습니다. 형식은 유효한 Python과 함께 $로 구성된 자리 표시자 이름을 사용합니다. 식별자 (영숫자 및 밑줄). 자리 표시자를 중괄호로 둘러싸면 중간에 공백 없이 더 많은 영숫자가 올 수 있습니다. $$를 쓰면 단일 이스케이프 $가 생성됩니다.

템플릿 클래스를 사용하여 문자열 Python 형식 지정

이 코드는 문자열 모듈에서 템플릿 클래스를 가져옵니다. Template 클래스를 사용하면 실제 값으로 대체할 수 있는 자리 표시자가 있는 템플릿 문자열을 만들 수 있습니다. 여기서는 문자열 n의 n3 및 n4 대신 값 n1 및 n2를 대체합니다.

파이썬3




from> string>import> Template> n1>=> 'Hello'> n2>=> 'techcodeview.com'> n>=> Template(>'$n3 ! This is $n4.'>)> # and pass the parameters into the> # template string.> print>(n.substitute(n3>=>n1, n4>=>n2))>

>

>

산출

Hello ! This is techcodeview.com.>

메모: 문자열 템플릿 클래스에 대한 자세한 내용은 다음을 참조하세요. Python의 문자열 템플릿 클래스

5. center() 메소드를 사용하여 문자열 형식을 지정하는 방법

center() 메서드는 지정된 너비의 문자열 내 중앙에 위치한 새 문자열을 반환하는 Python의 str 클래스에 내장된 메서드입니다.

center() 메소드를 사용하여 문자열 형식 지정

이 코드는 새로운 왼쪽과 오른쪽에 공백이 채워져 있습니다.

파이썬3




string>=> 'GeeksForGeeks!'> width>=> 30> centered_string>=> string.center(width)> print>(centered_string)>

>

>

산출

 GeeksForGeeks!>

Python 형식 문자열: % 대 .format 대 f-문자열 리터럴

f-문자열 둘 다보다 빠르고 좋습니다 %-포맷 그리고 str.format() . f-문자열 표현식은 런타임 시 평가되며 매우 간단하고 쉬운 구문을 사용하여 f-문자열 내에 표현식을 포함할 수도 있습니다.

중괄호 안의 표현식은 런타임에 평가된 다음 f-문자열의 문자열 부분과 함께 배치된 다음 최종 문자열이 반환됩니다.

메모: 문자열이 사용자 제공 문자열인 경우 템플릿 문자열을 사용합니다. 그렇지 않으면 Python 3.6 이상을 사용하는 경우 f-Strings를 사용합니다. 그렇지 않은 경우 format() 메서드를 사용하세요.

우리는 Python에서 문자열 형식을 지정하는 5가지 방법을 모두 다루었습니다. 각 방법에는 많은 사용 사례와 예가 있습니다. 또한 실제 프로젝트에서 어떤 방법을 사용하는 것이 가장 효율적인지 알아보기 위해 이러한 방법을 비교했습니다.

비슷한 읽기:

  • Python의 문자열 형식화
  • Python에서 문자열 포맷터를 사용하는 방법
  • Python에서 사전을 사용하여 문자열 형식을 지정하는 방법