작성일자 : 2023-12-31
Ver 0.1.1
0. Intro
Python 3.6 버전에서부터는 f-string이 추가되었다.
f-string은 문자열을 보다 더 쉽게 포맷팅하기 위한 방법 중 하나이며, Python을 다루는 사람이라면 자주 사용하는 방법이다.
1. How to use
1-1 기본 문법
Python에서 문자열은 따옴표(') 또는 쌍 따옴표(")를 이용하여 나타낸다.
>>> print("I'm String")
'I'm String'
f-string은 이러한 일반적인 문자열 앞에 f 또는 F 문자만 붙이면 된다.
>>> f"I'm String"
'I'm String'
1-2 변수 치환
중괄호('{','}')를 활용하면 f-string 안에 python의 표현식을 삽입할 수 있다.
>>> a = 10
>>> b = 25
>>> f"{a} + {b} is {a+b}"
'10 + 20 is 30'
>>> first = "Hello"
>>> second = "World"
>>> f"{first}, {second}"
'Hello, World'
1-3. 함수 호출
f-string을 통해 문자열 안에서 함수를 호출할 수 있다.
>>> word = "String"
>>> f"{word}is consist of {leng(word)} letters"
'String is consist of 6 letters'
>>> f"Capital letter is {word.upper()} and small letter is {word.lower()}"
'Capital letter is STRING and small letter is string'
>>> word = "String"
>>> f"The first two letters of {word}is {word[:2]}"
'The first two letters of String is St'
>>> f"The reversed letter of {word} is {word[::-1]}"
'The reversed letter of String is gnirtS'
>>> f"Repeat twice : {','.join([word]*2)}"
'Repeat twice : String, String
1-4. 객체 치환
f-string 안에 객체를 사용하면 해당 객체를 str() 내장 함수를 통해 호출된 결과가 도출된다.
>>> from datetime import date
>>> f"Today is {date.today()}, Happy New Year"
'Today is 2024-01-01, Happy New Year'
str() 내장 함수 대신에 repr() 내장 함수의 결과를 도출하고 싶다면 '!r'를 붙이면 된다.
>>> from datetime import date
>>> f"Today is {date.today()!r}, Happy New Year"
'Today is datetime.date(2024,01,01), Happy New Year'
repr() 내장 함수는 디버깅에 용이한 형태로 객체를 문자열로 변환해준다.
따라서 상항에 따라 str()과 repr()을 적절하게 사용하여 디버깅에 활용하도록 하자.