본문 바로가기
두두 IT/파이썬 퀴즈

[W3S 오답노트] Python String Formatting(.2f, .1%, :,)

by DoDo's 2026. 5. 6.
반응형

price:.2f

 

📝 파이썬 완벽 가이드: 마법의 문자열 포매팅, f-string과 소수점 다루기

파이썬 코딩을 하다 보면 "내 나이는 35살입니다" 혹은 "가격은 59.00 달러입니다" 처럼 문장 중간에 변수(데이터)를 쏙쏙 끼워 넣어야 할 때가 정말 많습니다. 이때 가장 현대적이고 편리하게 쓰이는 문법이 바로 f-string입니다.

📖 1. 필수 용어 및 이론 정리

  • f"..." (f-string):
    • 따옴표 앞에 알파벳 f를 붙여서 만듭니다. (format의 약자입니다)
    • 이 문자열 안에서는 중괄호 {} 를 열고 그 안에 변수 이름이나 계산식을 직접 넣을 수 있습니다.
  • :.2f (포맷 지정자):
    • 중괄호 안에서 변수 이름 뒤에 콜론(:)을 붙이면, "이 변수를 특별한 모양으로 바꿔서 출력해 줘!" 라는 명령이 됩니다.
    • .2: 소수점 아래 2자리까지만 보여달라는 뜻입니다. (만약 3자리라면 .3이 됩니다.)
    • f: Float(실수)의 약자로, 숫자를 소수점이 있는 실수 형태로 취급하라는 뜻입니다.

💻 2. 코드로 보는 f-string 분석

문제에 나온 코드를 완성해서 파이썬이 어떻게 읽어내는지 확인해 볼까요?

Python
 
# [1] price라는 변수에 59라는 정수(숫자)를 저장합니다.
price = 59

# [2] f-string을 사용해 문장을 만듭니다.
# {price:.2f} 는 "price 변수의 값을 소수점 둘째 자리까지 표현해라" 라는 뜻입니다.
txt = f"The price is {price:.2f} dollars"

# [3] 완성된 문장을 화면에 출력합니다.
print(txt)

# 출력 결과: The price is 59.00 dollars

59라는 단순한 정수가 :.2f라는 마법의 주문을 만나 59.00이라는 깔끔한 가격표 형태로 변신했습니다!


💡 3. 실전 응용 보너스 꿀팁!

f-string의 포맷 지정자는 소수점뿐만 아니라 아주 다양하게 활용할 수 있습니다. 실무에서 가장 많이 쓰이는 두 가지를 추가로 알려드릴게요.

  1. 천 단위 콤마(,) 찍기: 숫자가 너무 클 때 보기 좋게 콤마를 찍어줍니다.
    • 코드: f"{1000000:,}"
    • 결과: 1,000,000
  2. 비율(%)로 표현하기: 소수를 퍼센트로 자동으로 바꿔줍니다.
    • 코드: f"{0.75:.1%}" (소수점 첫째 자리까지 %로 표현)
    • 결과: 75.0%

📝 4. 핵심 한 줄 총정리 요약

"문장 중간에 변수를 넣고 싶다면 따옴표 앞에 f를 붙이고, 숫자를 소수점 둘째 자리까지 깔끔하게 맞추고 싶다면 중괄호 안에 {변수명:.2f}를 적어주자!"

 

 

if price == 100 else

📝 파이썬 완벽 가이드: f-string 안에서 조건문(if-else) 마술 부리기

파이썬에서는 코드를 짧고 간결하게 쓰기 위해 '삼항 연산자(Ternary Operator)'라는 것을 아주 자주 사용합니다. 이름은 어렵지만, 원리는 정말 간단합니다. "조건이 맞으면 이거, 틀리면 저거!"를 딱 한 줄로 쓰는 방법입니다.

📖 1. 필수 용어 및 이론 정리

  • 한 줄 조건문(삼항 연산자) 공식: [참일 때 나올 값] if [조건식] else [거짓일 때 나올 값]
  • if price == 100: "만약 price라는 변수의 값이 100과 같다면(==)" 이라는 뜻입니다. (파이썬에서 '같다'는 = 기호를 두 번 써야 합니다!)
  • else: "그렇지 않다면 (100이 아니라면)" 이라는 뜻입니다.

💻 2. 코드로 보는 f-string 조건문 분석

문제의 코드를 완성해서 파이썬이 어떻게 생각하는지 흐름을 따라가 보겠습니다.

Python
 
# [1] price 변수에 100을 저장합니다.
price = 100

# [2] f-string 중괄호 안에 조건문을 통째로 넣습니다.
# 해석: "price가 100이면 'perfect'를 출력하고, 아니면(else) 'ok'를 출력해라!"
txt = f"It is {'perfect' if price == 100 else 'ok'}"

# [3] 완성된 문장을 출력합니다. (현재 price가 100이므로 'perfect'가 선택됩니다.)
print(txt)

# 출력 결과: It is perfect

만약 첫 번째 줄을 price = 90 으로 바꾼 뒤에 똑같이 실행한다면, 조건(100과 같다)에 맞지 않기 때문에 else 뒤에 있는 값이 선택되어서 "It is ok" 라고 출력이 바뀔 것입니다!


📝 3. 핵심 한 줄 총정리 요약

"f-string 중괄호 {} 안에는 변수뿐만 아니라 [참값] if [조건] else [거짓값] 형태의 한 줄 조건문을 넣어 상황에 따라 문장을 바꿀 수 있다!"

반응형