본문 바로가기
개발/Python

Python) 자료형에 대한 이야기(3) - 문자열 포맷팅

by LILO 2021. 5. 23.
반응형

문자열 포맷팅 (String Formatting)

 

문자열 포맷팅은 문자열 안에 어떠한 특정 값(정수, 문자열, 소수 등)을 삽입하고 싶을 때 사용합니다.

format 방식과 % 방식이 존재하는데 format은 추측하는 과정이 하나 더 들어가 있어서 속도 면에서는 %가 좋다고 합니다. 그러면 "% 방식으로 알아보는게 좋겠죠?"

 

아래는 문자열 포맷 코드입니다. 이 코드를 참고하여 코딩을 하면 좋을 것이라는 생각이 듭니다.

아래에 있는 것들은 솔직히 다 외웠으면 합니다. 다른 언어들에서도 자료형을 이용할 때 기본이 되는 것들이 때문입니다.

 

※ 문자열 포맷 코드

- %s: 문자열
- %c: 문자 1개
- %d: 정수
- %f: 실수(부동소수)
- %%: 문자 "%"를 출력하고 싶을 때

 

 

 

문자열 포맷팅 (String Formatting) 활용 - LAB

 

문자열 포맷팅은 문자열 안에 어떠한 특정 값(정수, 문자, 소수) 등을 삽입하는 방법입니다.

 

a= "I have %d tools"
b= "I have %s tools"
c= "I have %d %s tools"
num=3
tool="IDE"

print (a % 3)
print (b % "three")
print (a % num)
print (c % (num, tool))
print ("%-10sLet's run space test" %"okay")
print (f'내 리눅스에 Python {num+.6}이 설치되어 있습니다.')
print (f'내 리눅스에 Python {num+.6} 기준인 {tool} 툴이 {num}개  설치되어 있습니다.')

 

앞에 포맷 코드를 이용해서 변수에 대입했습니다.  2개 이상의 변수를 넣을 때는 ()를 써줘서 간결하게 처리를 합니다.

추가로 마지막 2줄은 f 문자열 포맷팅(f-string)이라는 3.6 이상에서만 지원하는 기능을 사용했습니다.

너무나도 간단하게 f 접두사만 붙이면 간결하게 할 수 있다는 점이 매력적입니다. f-string에서 변수를 사용시에는 {}인 중괄호를 사용합니다.

 

성능은 string format보다  f-string이 뛰어난데 솔직히 가독성 면에서는 그닥...이라는 생각이 듭니다.  물론 지금같이 간단한 문장이면 예외입니다.

반응형