중급 과정의 시작! 더 빠르고, 더 읽기 쉬운 코드를 작성해 봅시다.
안녕하세요! 번외 시리즈로 기초를 단단히 다지고 돌아온 여러분, 환영합니다. 오늘부터는 본격적인 중급 과정에 들어갑니다. 그 첫 번째 도구는 데이터를 화면에 출력할 때 가장 세련된 방식인 f-string입니다.
예전에는 변수와 문자를 합치기 위해 +를 여러 번 쓰거나 .format()을 사용했습니다. 하지만 f-string은 코드가 훨씬 짧고 직관적입니다.
name = "제미니"
age = 20
# 중급자라면 이렇게! f-string 방식
print(f"제 이름은 {name}이고, 나이는 {age}살입니다.")
f-string의 중괄호 { } 안에는 변수만 들어가는 게 아니에요. 직접 계산을 하거나 형식을 지정할 수도 있습니다.
# 1. 중괄호 안에서 계산하기
print(f"내년에는 {age + 1}살이 됩니다.")
# 2. 소수점 자리수 조절 (:.2f)
pi = 3.141592
print(f"원주율은 {pi:.2f}입니다.") # 결과: 3.14
# 3. 천 단위 콤마 추가 (:,)
money = 1000000
print(f"통장 잔고: {money:,}원") # 결과: 1,000,000
사용자에게 여러 값을 한 줄에 입력받고 싶을 때, split()을 사용하면 데이터를 리스트로 쪼개서 관리할 수 있습니다.
# 공백을 기준으로 두 단어 입력받기
user_info = input("이름과 취미를 입력하세요(공백 구분): ").split()
print(f"{user_info[0]}님의 취미는 {user_info[1]}이군요!")
Q1. f-string의 'f'는 무슨 뜻인가요?
A. formatted(형식이 지정된)의 약자입니다. 문자열 앞에 f를 붙임으로써 파이썬에게 "이 문장 안에 변수가 들어있으니 해석해줘!"라고 신호를 보내는 것이죠.
Q2. f-string은 파이썬 몇 버전부터 쓸 수 있나요?
A. 파이썬 3.6 버전부터 도입되었습니다. 현재 대부분의 실무 환경은 그 이상 버전을 사용하므로 안심하고 쓰셔도 됩니다.
Q3. input().split()으로 받은 숫자는 바로 계산이 안 되나요?
A. 네, split()의 결과는 항상 **문자열 리스트**입니다. 숫자로 쓰고 싶다면 int()로 각각 바꿔주거나, 나중에 배울 map() 함수를 써야 합니다.
Q4. f-string 안에서 함수도 부를 수 있나요?
A. 당연하죠! {name.upper()} 처럼 문자열 함수를 호출하거나 직접 만든 함수를 넣어서 결과값을 바로 출력할 수도 있습니다.
"영수증 생성기 만들기"
1. 상품명, 단가, 수량을 각각 입력받으세요.
2. f-string을 사용해 총금액(단가 * 수량)을 계산하고,
3. 천 단위 콤마(,)를 찍어서 멋지게 출력해 보세요!
댓글
댓글 쓰기