Ⅰ. 기본 문법 및 원시 자료형 (Primitive Data Types)
- 변수 선언: 변수_이름 = 값. print() 함수로 값 출력.
1. 숫자형 (Numeric)
- 사칙연산: 더하기(+), 빼기(-), 곱하기(*), 나누기(/).
- 기타 연산: 몫(//), 나머지(%), 거듭제곱(**).
10 // 3 → 3
10 % 3 → 1
2 ** 3 → 8
2. 불리언형 (Boolean, bool)
- 값: 참 (True) / 거짓 (False). 주의: T와 F는 대문자.
- 논리 연산: 비교 연산자 (>, <), 논리 키워드 (not, and, or) 부등호(==)
3. 문자열 (String, str)
- 표현: 작은 따옴표 또는 큰 따옴표 사용.
- 연산:
- 덧셈 (+): 문자 이어붙이기
- 곱셉(*n번): 문자 n번 반복
- 주의: 같은 데이터 타입 간 연산만 가능.
"A" + "B" → "AB"
5 + "개" → Error
- 인덱싱 (Indexing): 글자 순서 번호 접근 (0부터 시작).
"Python"[0] → 'P'
"Python"[1:4] → "yth"
- 슬라이싱 (Slicing): 문자열 일부를 잘라낼 때 [시작:끝] 사용.
- 주요 메서드:
- 문자열 길이 len()
- 대문자 변환 .upper()
- 소문자 변환 .lower()
- 문자열 분리 .split()
- 문자열 치환 .replace()
"a,b,c".split(',') → ['a', 'b', 'c']
Ⅱ. 컬렉션 자료형 (Collection Types)
리스트 (List): [값1, 값2, ... ]
- 특징: 순서 있는, 가변형 (Mutable) 자료 모음. 인덱싱/슬라이싱/len() 사용.
- 기능:
- .append() : 덧붙이기
- .sort() : 정렬
- in : 포함 여부 확인
my_list.append(10).
10 in my_list → True/False.
딕셔너리 (Dictionary, dict): {키1: 값1, 키2: 값2}
- 특징: 키(Key):값(Value) 쌍. 순서 없음 (인덱싱 불가).
- 사용: 키로 접근/수정/추가. in (키 존재 여부 확인), 값 업데이트 가능.
my_dict['age'] → 값 접근
my_dict['new'] = 1 → new라는 키가 있을 경우: 값을 1로 변경 / new 키가 없을 경우: new 키 추가 + 1 값 추가
튜플 (Tuple): (값1, 값2, ... )
- 특징: 리스트와 비슷하나 불변형 (Immutable) 자료. ()로 표현.
- 용도: 함수에서 여러 값 반환 시 유용.
집합 (Set): {값1, 값2, ... }
- 특징: 중복을 허용하지 않는 자료형. 순서 없음.
- 기능: 교집합 (&), 합집합 (|), 차집합 (-) 연산.
Ⅲ. 제어문 (Control Flow) 및 함수 (Function)
조건문 (if Statement):
- if, else, **elif**를 사용한 조건별 코드 실행 (들여쓰기 필수)
if 조건: ... elif 조건2: ... else: ...
참일_때_값 if 조건 else 거짓일_때_값
반복문 (for Loop):
- 코드 반복 실행. enumerate() (인덱스와 값 동시 사용), break (반복 중단)
for 변수 in 반복_가능_객체: ...
리스트 컴프리헨션 (Comprehension): [표현식 for 변수 in 반복_객체 if 조건]
[i*2 for i in range(5)] → [0, 2, 4, 6, 8].
함수 (Function): def 함수_이름(매개변수): ... return 값
- 정의: def 키워드로 반복 사용되는 코드를 정의.
- 기능: return 키워드로 결과값을 돌려주고 함수 종료.
Ⅳ. 파이썬 심화 및 객체 지향 (OOP)
F-string: f'{변수}문자열' 형식으로 변수를 문자열에 직관적으로 삽입.
f"결과: {변수}입니다"
예외 처리 (try / except)
try: ... except 에러타입: ...
고급 함수
lambda 식: lambda 인수: 표현식
- 익명 함수. 임시로 함수를 정의해야 하는 경우 한줄 함수 정의
map(): map(함수, 리스트)
list(map(lambda x: x*2, [1, 2])) → [2, 4]
filter(): filter(함수, 반복_가능_객체)
- 리스트에서 특정 조건만 만족하는 원소 뽑기.
- True/False 중 하나를 반환해야 할 때, True인 원소만 선택
파일 입출력 (File I/O):
- open() 함수로 파일 불러오기/쓰기.
- with open() 사용 시 파일 자동 닫힘.
모듈 (Module):
- import를 통해 여러 파일로 분리된 코드를 불러와 사용.
함수 심화 매개변수:
- 키워드 인수 (Keyword Argument): 순서 무관하게 인수=값 설정 가능.
- 가변 인수 (Arbitrary Arguments): 개수를 지정하지 않고 모두 받는 방법
- *args 튜플로 받음
- **kwargs 딕셔너리로 받음
def func(a, *args, **kwargs): ...
- 클래스 (Class): class 클래스_이름:
# 들여쓰기로 클래스 내용 정의
class Car:
def __init__(self, brand):
self.brand = brand
- 개념: 객체 (Object) 생성을 위한 설계도 또는 틀.
- 사용: **객체 지향 프로그래밍 (OOP)**의 핵심 요소.
댓글 영역