본문 바로가기
Python 문법/Python 기본 문법(3.10 기준)

[python3.10 기본] 목차

by cogito21_python 2024. 7. 1.
반응형

Python 3.10 심화 학습 목차

파이썬 소개

  • 파이썬의 역사와 특징
  • Python 2와 Python 3의 차이점
  • Python 설치 및 환경 설정

기본 문법

  • 파이썬 인터프리터 사용법
  • 주석(Comment)
  • 변수와 데이터 타입
    • 숫자 (정수, 실수, 복소수)
    • 문자열
    • 불리언
    • None

연산자와 표현식

  • 산술 연산자
  • 비교 연산자
  • 논리 연산자
  • 비트 연산자
  • 할당 연산자
  • 연산자 우선순위

제어문

  • 조건문 (if, elif, else)
  • 반복문 (for, while)
  • 반복 제어문 (break, continue, pass)

함수

  • 함수 정의 및 호출
  • 매개변수와 인자
    • 위치 인자와 키워드 인자
    • 기본값 인자
    • 가변 인자 (args, *kwargs)
  • 반환값
  • 재귀 함수
  • lambda 함수
  • 함수 어노테이션

데이터 구조

  • 리스트 (List)
    • 리스트 컴프리헨션
  • 튜플 (Tuple)
  • 세트 (Set)
  • 딕셔너리 (Dictionary)
    • 딕셔너리 컴프리헨션
  • 컬렉션 모듈

문자열 조작

  • 문자열 인덱싱과 슬라이싱
  • 문자열 메소드
  • 문자열 포매팅 (f-string, format 메소드, % 포매팅)
  • 정규 표현식

파일 입출력

  • 파일 열기, 읽기, 쓰기, 닫기
  • with 문을 사용한 파일 처리
  • 파일 경로와 디렉토리 조작 (os 모듈, pathlib 모듈)

예외 처리

  • try, except, else, finally 구문
  • 예외 발생시키기 (raise)
  • 사용자 정의 예외

클래스와 객체 지향 프로그래밍

  • 클래스 정의
  • 생성자와 소멸자
  • 인스턴스 메소드와 클래스 메소드, 정적 메소드
  • 상속
  • 다중 상속
  • 매직 메소드와 연산자 오버로딩
  • 데이터 클래스 (dataclasses 모듈)

모듈과 패키지

  • 모듈 import
  • 패키지와 서브패키지
  • 모듈 검색 경로와 PYTHONPATH
  • 표준 라이브러리 활용

표준 라이브러리 및 외부 라이브러리 사용

  • 주요 표준 라이브러리 소개 (os, sys, math, datetime, collections 등)
  • 가상 환경 (venv) 설정
  • 패키지 관리자 (pip) 사용법

비동기 프로그래밍

  • async와 await 키워드
  • asyncio 모듈
  • 비동기 제너레이터와 컴프리헨션

형 힌팅과 타입 검사

  • 타입 힌트 문법
  • 타입 검사 (mypy)

테스트와 디버깅

  • 단위 테스트 (unittest 모듈)
  • 디버깅 기법 (pdb 모듈, breakpoint 함수)
  • 로깅 (logging 모듈)

프로젝트 구성 및 배포

  • 프로젝트 디렉토리 구조
  • setup.py와 setuptools
  • 패키지 배포 (PyPI)

고급 데이터 구조

  • deque와 기타 컬렉션 (collections 모듈)
  • heapq 모듈을 사용한 힙 큐
  • bisect 모듈을 사용한 이진 검색

고급 함수

  • 데코레이터
  • 클로저
  • 고차 함수 (map, filter, reduce)
  • functools 모듈 (partial, wraps)

메타프로그래밍

  • 클래스 데코레이터
  • 메타클래스
  • 동적 속성 및 메소드 추가

병행성 및 병렬성

  • threading 모듈
  • multiprocessing 모듈
  • concurrent.futures 모듈
  • 비동기 프로그래밍의 패턴과 사용 사례

네트워킹

  • socket 프로그래밍
  • HTTP 클라이언트 (requests 모듈)
  • 웹 소켓 프로그래밍

웹 개발

  • 웹 프레임워크 개요 (Django, Flask 등)
  • RESTful API 개발
  • 데이터베이스 연동 (SQLAlchemy, Django ORM)

데이터 과학과 머신러닝

  • NumPy 기초
  • pandas를 사용한 데이터 처리
  • matplotlib을 사용한 데이터 시각화
  • scikit-learn을 사용한 머신러닝 기초

보안

  • 암호화와 해싱 (hashlib, hmac, secrets 모듈)
  • 보안 관련 모범 사례
  • 웹 애플리케이션 보안 (OWASP Top 10)

성능 최적화

  • 프로파일링 (cProfile, timeit 모듈)
  • 메모리 관리 기법
  • Cython을 사용한 성능 개선
  • JIT 컴파일러 (PyPy)

다양한 도구와 기법

  • 문서화 도구 (Sphinx)
  • 코드 품질 검사 도구 (pylint, flake8)
  • 버전 관리 (git 기본 사용법)

부록

A. 유용한 파이썬 팁과 트릭

  • 유용한 파이썬 팁
  • 자주 사용하는 패턴 및 기법

B. 참고 자료 및 추가 학습 리소스

  • 추천 도서
  • 유용한 웹사이트 및 블로그
  • 커뮤니티 및 포럼
반응형