04. 입출력 (소통하기)
"혼자 떠드는 프로그램은 재미없습니다. 사용자에게 말을 걸고(input), 대답을 들려주는(print) 법을 배웁니다."
1. 화면에 보여주기 (print)
가장 많이 쓴 명령어죠? 괄호 안의 내용을 화면에 출력합니다. 개발자에게는 "내 코드가 잘 돌아가는지 확인하는 청진기(Debugging)" 역할도 합니다.
print("Hello")
print(10 + 20)
user_name = "봉이"
# f-string: 문자열 안에 변수 넣기 (가장 추천하는 방법!)
print(f"안녕하세요, {user_name}님!")
2. 키보드로 입력받기 (input)
사용자가 키보드로 뭔가를 칠 때까지 프로그램이 잠시 멈추고 기다립니다. 엔터 키를 누르면 입력된 내용이 데이터가 되어 변수에 들어갑니다.
⚠️ 주의: 모든 입력은 '문자열'이다!
input()으로 들어온 데이터는 무조건 문자열(String) 취급을 받습니다.
숫자 10을 쳐도 컴퓨터는 글자 "10"으로 받아들입니다.
graph LR
User["👤 사용자"] -->|"키보드: 20"| Input["input 함수"]
Input -->|"문자열 '20'"| Var["변수 age"]
Var -->|"🚨 에러! ('20'+1)"| Error["계산 불가"]
Var -->|"int 변환"| RealNum["숫자 20"]
RealNum -->|"성공! (20+1)"| Result["21"]
style User fill:#e1f5fe,stroke:#01579b
style Input fill:#fff9c4,stroke:#fbc02d
style Error fill:#ffcdd2,stroke:#c62828
style Result fill:#e8f5e9,stroke:#2e7d32
age = input("몇 살? ") # 사용자가 20 입력
# print(age + 1) -> 🚨 에러 발생! ("20" + 1 은 불가능)
real_age = int(age) # 숫자로 변환 (Casting)
print(real_age + 1) # 21 (성공)
3. 실전 예제 (계산기 만들기)
배운 내용을 합쳐서 아주 간단한 계산기를 만들어 봅시다.