강의소개¶
강의 목표¶
- 파이썬 언어를 통해 컴퓨터 프로그래밍 기본 원리를 습득
- 프로그래밍 동작 원리 이해를 통해 산업현장 및 실생활 문제 해결 적용
교재¶
참고서적¶
- Dive Into Python 3
- How to Think Like a Computer Scientist: Learning with Python 3, Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers, 2017(PDF)
- The Python Tutorial
- A Byte of Python: http://byteofpython-korean.sourceforge.net/byte_of_python.html (한글 python3)
- A Byte of Python: https://www.gitbook.com/book/swaroopch/byte-of-python/details (영어 python3)
- Head First Programming : 파이썬으로 처음 배우는 프로그래밍, 폴 배리, 데이빗 그리피스, 강권학(번역), 2011
- Head First Python : 머리에 쏙쏙 들어오는 파이썬 안내서, Barry, Paul, 한빛미디어, 2011
- 창의적 프로그래밍을 위한 파이썬, 한혁수, 생능출판사, 2016
- 두근두근 파이썬, 천인국, 생능출판사, 2017
- Object-Oriented Programming in Python
강의 계획¶
소개¶
- 파이썬 소개
- 준비
- 파이썬 설치
- 아나콘다 설치
- 파이참 설치 및 사용법
프로그래밍¶
- 기초(Basics)
- 주석
- 리터럴 상수
- 숫자(numbers)
- 문자열(string)
- 변수(variables)
- 수식(expressions)
- 들여쓰기(indentation)
- 연산자(operators), 연산 우선순위(operator precedence)
- 흐름 제어(control flow)
- if
- while
- for
- break
- continue
- 함수
- 정의
- 지역변수와 global문
- 기본 매개변수
- 키워드 인자
- 가변 매개변수
- return 문
- lambda 식
- 문서화 문자열
- 데이터 형
- 숫자형(int, float, complex)
- 리스트
- 튜플
- 문자열(str)
- 사전(dict)
- 집합(set)
- 모듈
- 모듈 검색 경로
dir()
함수- 패키지
- 이름 공간(name space) 및 영역(scope)
- import 문
- 속성과 dot 연산자
- 클래스
- 내장(built-in) 클래스(int, float, complex등)
- 새로운 클래스 만들기
- 속성
- 클래스 객체 및 인스턴스 객체
- 클래스/인스턴스 변수
- 상속
- 예외(Exceptions)
- 예외 잡기(try/except)
- 예외 발생하기(raise)
- finally/with 절
활용¶
이 강의에서는 각 패키지의 활용 방법만을 다룬다. 더 자세한 사용법은 다른 강의(R, Python 데이터 분석)를 통해서 제공할 예정이다.
- 문서 데이터
- 데이터 수집: requests, urllib, beautiful soup
- 분석: pandas(series, dataframe)
- 시각화: matplotlib
- 영상데이터
- 이미지: PIL, Pillow, opencv
- 이미지 작업: 불러오기, 잘라내기, 크기 변경, 회전, 색상 변경, 필터링, 저장
- 얼굴인식
- 사진 얼굴 인식
- 비디오 얼굴 인식
고급¶
- 더 많은 데이터 형(MoreDataTypes.md)
- 반복형(iterator)
- 제너레이터(generator)
- 고급(AdvancedSubjects.md)
- 코루틴(coroutine)