📚 데이터 타입과 연산자 완벽 정복
1. 숫자형 (Numeric)
- 정수 (int): 10, -20, 0
- 16진수 표기: 0x로 시작 (0xAF32)
- 8진수 표기: 0o로 시작 (0o71)
- 실수 (float): 20.1, 0.123
- 지수 표기법: 5e3 ($5 \times 10^3 = 5000.0$), 3e-7 ($3 \times 10^{-7}$)
- 참고: 코드를 보기 쉽게 숫자 사이에 _를 넣을 수 있습니다. (100_000_000 = 1억)
2. 논리형 (bool)
오직 **참(True)**과 거짓(False) 두 가지만 존재합니다.
- 묵시적 형변환: 파이썬은 데이터가 비어있으면 False, 들어있으면 True로 판단합니다.
- False 취급: 0, 0.0, "" (빈 글자), None
- True 취급: 0이 아닌 모든 숫자(음수 포함), 공백 스페이스(" ")를 포함한 모든 글자
3. 사용자 입력받기 input()
사용자에게 값을 키보드로 입력받습니다. ★중요: 사용자가 숫자를 쳐도 무조건 '문자열(str)'로 들어옵니다. 계산하려면 int()로 형변환을 해야 합니다.
age_str = input("나이:") # "30" (문자열)
age = int(age_str) # 30 (정수)
4. 파이썬의 연산자 총정리
① 산술 연산자
일반적인 +, -, *, / 외에 다음 3가지가 핵심입니다.
- // : 몫만 구하기 (10 // 3 ➔ 3)
- % : 나머지만 구하기 (10 % 3 ➔ 1)
- ** : 제곱 (3 ** 5 ➔ 243)
② 대입(할당) 연산자
내 변수 값에 계산을 바로 적용하여 업데이트합니다.
- x += 1 (x = x + 1과 같음)
- x *= 2 (x = x * 2와 같음)
③ 비교 연산자 (결과는 항상 bool)
- == (같다), != (다르다)
- >, <, >=, <=
④ 논리 연산자
여러 조건을 합칠 때 사용합니다.
- and (또는 &): 양쪽 모두 True여야 True
- or (또는 |): 둘 중 하나만 True여도 True
- not: 결과 뒤집기 (not True ➔ False)
- ^ (XOR): 양쪽 값이 서로 다를 때만 True
⑤ 조건 연산자 (삼항 연산자)
코드를 아주 간결하게 만들어 줍니다.
- 문법: [True일 때 값] if [조건식] else [False일 때 값]
age = 25
result = "성년" if age > 20 else "미성년" # result에는 "성년"이 저장됨
5. 파이썬은 '동적 타입(Dynamic Type)' 언어다
변수를 처음 만들 때 "이 상자는 무조건 숫자 전용이야!"라고 고정(정적 타입)하지 않습니다. age = 30을 넣었다가 바로 다음 줄에 age = "서른살" 문자를 넣어도 에러 없이 부드럽게 돌아가는 매우 유연한 언어입니다.
- 참고: 타입 힌트 (코드 읽기를 돕는 기능)
- name: str = "홍길동" 처럼 적을 수 있지만, 강제성은 없습니다.
📝 [2편 복습 퀴즈]
Q1. 10 % 3 의 연산 결과는 무엇인가요?
① 3.333
② 3
③ 1
④ 0
Q2. 다음 중 값을 논리형(bool)으로 변환했을 때 False가 나오는 것은?
① bool(" ") (스페이스 공백)
② bool(-5)
③ bool("False")
④ bool(0)
Q3. input() 함수로 사용자에게 "100"을 입력받았습니다. 이 100을 수학적으로 계산하기 위해 감싸주어야 하는 함수는 무엇인가요?
① str()
② int()
③ bool()
④ type()
Q4. 논리 연산자 중, 양쪽의 조건이 모두 True일 때만 최종적으로 True를 반환하는 연산자는?
① or
② not
③ ^ (XOR)
④ and
Q5. result = "합격" if score >= 80 else "불합격" 코드에서 score가 75라면 result에 저장되는 값은?
① 합격
② 불합격
③ 75
④ 에러 발생
💡 정답 확인
Q1: ③ (나머지) / Q2: ④ (숫자 0은 False) / Q3: ② (문자열을 정수로) / Q4: ④ / Q5: ②
'두두 IT > 파이썬' 카테고리의 다른 글
| [PYTHON 3-1] 여러 데이터를 하나로! 리스트(List) (0) | 2026.04.15 |
|---|---|
| [PYTHON 2-3] 문자열(String)과 포매팅 (0) | 2026.04.14 |
| [PYTHON 2-1] 데이터를 담는 그릇, '변수(Variable) (0) | 2026.04.14 |
| [PYTHON 1-3] 파이썬 코딩은 어떻게 하고, 설치는 어떻게 할까? (1) | 2026.04.14 |
| [PYTHON 1-2] 왜 다들 파이썬을 배울까? (특징부터 장단점까지) (0) | 2026.04.14 |