>  기사  >  백엔드 개발  >  문자열 형식화(% 연산자)

문자열 형식화(% 연산자)

高洛峰
高洛峰원래의
2016-10-20 10:02:391577검색

문자열 형식 지정 기능은 C 및 Fortran 언어의 형식화된 입력 및 출력과 같은 많은 프로그래밍 언어에 포함되어 있습니다. Python에서 문자열 형식을 지정하는 기본 제공 연산자는 "%"입니다.

템플릿

문자열 형식을 지정할 때 Python은 문자열을 템플릿으로 사용합니다. 템플릿에는 실제 값을 위한 공간을 예약하고 실제 값이 표시되어야 하는 형식을 설명하는 포맷터가 있습니다. Python은 튜플을 사용하여 여러 값을 템플릿에 전달하며, 각 값은 형식 문자에 해당합니다.

예를 들어 다음 예는 다음과 같습니다.

print("나는 %s입니다. 나는 %d입니다" % ('Pythontab', 1))

The 위의 예에서는

"나는 %s입니다. 나는 %d입니다"가 템플릿입니다. %s는 문자열을 나타내는 첫 번째 형식 문자입니다. %d는 정수를 나타내는 두 번째 형식 문자입니다. ('Pythontab',99)의 두 요소 'Pythontab'과 99는 %s와 %d를 대체하는 실제 값입니다.

템플릿과 튜플 사이에는 서식 지정 작업을 나타내는 % 기호가 있어 이를 구분합니다.

전체 "I'm %s. I'm %d" %('Pythontab', 1)는 실제로 문자열 표현식을 구성합니다. 일반 문자열처럼 변수에 할당할 수 있습니다. 예:

a = "나는 %s입니다. 나는 %d입니다" % ('Pythontab', 1)

print(a)

결과 is: 저는 Pythontab입니다.

사전을 사용하여 실제 값을 전달할 수도 있습니다. 다음과 같습니다:

print("저는 %(name)s입니다. 저는 %(age)d입니다" % {'name':'Pythontab', 'age':99})

보시다시피 두 가지 형식 문자의 이름을 지정했습니다. 이름은 () 안에 표시됩니다. 각 이름은 사전의 키에 해당합니다.

형식 문자

형식 문자는 실제 값을 위한 공간을 예약하고 표시 형식을 제어합니다. 형식 문자에는 다음과 같이 표시 유형을 제어하는 ​​유형 코드가 포함될 수 있습니다.

%s 문자열(str()을 사용하여 표시됨)

%r 문자열(repr() 사용)

%c 단일 문자

%b 2진수

%d 10진수

%i 10진수

%o 8진수

%x 16진수

%e 지수(e로 표기)

%E 지수(E로 표기)

%f 부동 소수점 수

%F 부동 소수점 수, 위와 동일

%g 지수(e) 또는 부동 소수점 수(표시 길이에 따라 다름)

%G 지수(E ) 또는 부동 소수점 숫자(표시 길이에 따라)

%% 문자 "%"

를 사용하여 다음과 같은 방식으로 형식을 추가로 제어할 수 있습니다.

%[ (이름)][플래그][너비].[정밀도]typecode

(이름)은 +,-,' ' 또는 0을 가질 수 있는

플래그로 명명됩니다. +는 오른쪽 정렬을 의미합니다. - 왼쪽 정렬을 의미합니다. ''는 공백입니다. 즉, 양수 왼쪽에 공백을 채워 음수에 맞춰 정렬하는 것을 의미합니다. 0은 0 패딩을 사용함을 의미합니다.

width는 디스플레이 너비를 나타냅니다.

precision은 소수점 이하의 정밀도를 나타냅니다.

예:

print("%+10x" % 10)

print("%04d" % 5)

print("%6.3f" % 2.3)

위의 너비와 정밀도는 두 개의 정수입니다. *를 사용하여 이 두 수량을 동적으로 대체할 수 있습니다. 예:

print("%.*f" % (4, 1.2))

Python은 실제로 *를 4로 바꿉니다. 따라서 실제 템플릿은 "%.4f"입니다.

요약

Python에 내장된 % 연산자를 사용하여 문자열 연산의 형식을 지정하고 문자열의 표시 형식을 제어할 수 있습니다. Python에서 문자열 형식을 지정하는 다른 방법이 있지만 % 연산자를 사용하는 것이 가장 편리합니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.