Python 문자열 형식 지정 - 문자열 형식을 지정하는 방법은 무엇입니까?
문자열 형식을 사용하면 변수와 값을 결합하여 동적 문자열을 만들 수 있습니다. 이번 글에서는 문자열 형식을 지정하는 5가지 방법에 대해 설명합니다.
더 나은 이해를 위해 예제를 통해 문자열 형식을 지정하는 다양한 방법을 배우게 됩니다. 지금 살펴보겠습니다!
Python에서 문자열 형식을 지정하는 방법
문자열 형식 지정을 수행하는 방법에는 다섯 가지가 있습니다. 파이썬
- % 연산자를 사용하여 형식을 지정합니다.
- format() 문자열 메소드를 사용하여 형식화합니다.
- f-문자열이라고 하는 문자열 리터럴로 형식을 지정합니다.
- 문자열 템플릿 클래스를 사용한 형식 지정
- center() 문자열 메소드를 사용하여 형식화합니다.
따라서 위에서 언급한 방법 전체를 살펴보고 어떤 문자열 형식 지정 전략이 가장 좋은지에 대해서도 중점적으로 살펴보겠습니다.
1. % 연산자를 사용하여 문자열 형식을 지정하는 방법
문자열 형식화의 가장 오래된 방법입니다. 여기서는 모듈로를 사용합니다. % 운영자 . 모듈로 % 문자열 형식화 연산자라고도 합니다.
% 연산자를 사용하는 Python 형식 문자열
The 칙칙하고 앙상한 떠돌이 개 %s gobbled down % 'hurriedly' 표현식에서 문자열 내의 %s 자리 표시자는 'hurriedly' 값으로 대체됩니다.
파이썬3
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)> |
산출
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
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
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-문자열
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에서 사전을 사용하여 문자열 형식을 지정하는 방법