본문 바로가기

Python/공부공부

[Python] 문자열 포매팅 ( str.format(), f-string, """ )

 

*  str.format()

# 변수 정의
name = "Alice"
age = 30

# 문자열 템플릿 생성
template = "Hello, my name is {name} and I am {age} years old."

# format 메서드를 사용하여 플레이스홀더를 값으로 대체
result = template.format(name=name, age=age)

# 결과 출력
print(result)

 

문자열 템플릿을 생성하고, 동적으로 값을 할당해줄 플레이스홀더 부분은 {} 중괄호로 표시.

=> .format 함수로 각 플레이스홀더를 대체할 값을 변수 name과 age로 지정. 

 


 

.format 함수는 아래처럼 문자열 템플릿에 바로 연결해서도 사용 가능.

# 변수 정의
name = "Alice"
age = 30

# 문자열 템플릿 생성
greeting = "Hello, my name is {name} and I am {age} years old.".format(name=name, age=age)

# 결과 출력
print(greeting)

 

 

출력결과

=>   Hello, my name is Alice and I am 30 years old.

 


 

* f-string (서식 문자열)

 

# 변수 정의
name = "Alice"
age = 30

# f-string을 사용하여 문자열 템플릿 생성 및 값 대체
result = f"Hello, my name is {name} and I am {age} years old."

# 결과 출력
print(result)

 

f-string 은 앞에 ' f ' 또는 ' F '를 붙인 후 문자열 템플릿 내부에 변수를 직접 삽입. 

 

 

출력결과

=>   Hello, my name is Alice and I am 30 years old.

 

 


 

(비교)

str.format() : 함수 호출이 필요해 더 느리지만, 복잡한 템플릿을 만들거나 템플릿을 재사용할 때 유용. 

f-string : 가독성성능이 더 좋음. (컴파일 시점에 문자열을 포매팅), 최신버전(3.6 이상)에서 사용 가능.

 

 


 

 

* 삼중따옴표 (""") 

여러줄의 문자열을 만들 때 str.format(), f-string() 과 함께 사용

 


(  str.format() ,  """ 함께 사용 )

name = "Alice"
age = 30
city = "Wonderland"


# 삼중 따옴표를 사용하여 멀티라인 문자열 템플릿 생성
template = """
Hello, my name is {name}.
I am {age} years old.
I live in {city}.
"""

# format 메서드를 사용하여 플레이스홀더를 값으로 대체
result = template.format(name=name, age=age, city=city)

# 결과 출력
print(result)

 

 

( f-string  ,  """ 함께 사용 )

name = "Alice"
age = 30
city = "Wonderland"

# f-string과 삼중 따옴표를 사용하여 멀티라인 문자열 생성
result = f"""
Hello, my name is {name}.
I am {age} years old.
I live in {city}.
"""

# 결과 출력
print(result)

 

 

출력결과

Hello, my name is Alice.
I am 30 years old.
I live in Wonderland.