4차 산업혁명이 이루어지며 빅데이터 응용 시대에 들어선 오늘날, 필수적인 데이터 과학의 기초능력과 실무활용을 갖추고 싶은 학생들은 적절한 수준의 프로그래밍 능력을 갖춰야 한다. 데이터 과학에 사용할 수 있는 프로그래밍 언어는 많지만 파이썬이 많은 사람들에게 선택받고 있다. 파이썬은 배우기 쉬울 뿐 아니라 공개된 수많은 모듈과 패키지를 무료로 활용할 수 있다는 장점이 있다. 파이썬에 대한 기본적인 내용을 숙지한 후 필요한 모듈과 패키지를 사용법을 익히면 실무영역에서 파이썬을 이용하여 데이터에서 정보를 추출하고 활용할 수 있다.
이 책에서는 파이썬 프로그래밍의 기초적 내용을 요약하여 쉽게 공부할 수 있다. 파이썬의 기본 자료형인 정수, 실수, 문자열에 대해 자세히 소개하였다. 또한 묶음자료인 리스트, 튜플, 딕셔너리, 셋(set)을 생성하고 조작하는 여러 메소드를 집중적으로 다루었다.
Contents
머리말 / iii
차례 / iv
제1장 파이썬 프로그래밍 개요 / 1
1.1 파이썬 프로그래밍 / 1
1.1.1 파이썬 자료 / 2
1.1.2 파이썬의 자료 처리 / 2
1.1.3 사용자정의 함수와 클래스 / 3
1.1.4 모듈, 패키지(라이브러리) / 3
1.2 파이썬 배우기 / 4
1.2.1 파이썬 내장함수 / 4
1.2.2 파이썬 키워드 / 5
1.3 파이썬 개발 툴 / 6
1.3.1 파이썬 IDLE / 6
1.3.2 주피터노트북 / 7
제2장 파이썬 기초자료 : 숫자와 문자열 / 9
2.1 파이썬 표준입력과 표준출력 / 9
2.2 실수 및 연산 / 10
2.2.1 정수 연산 / 13
2.2.2 숫자 연산의 우선 순위 / 13
2.3 수의 비교 / 16
2.4 math 모듈 / 18
2.5 수학함수 / 20
2.6 문자열 기초 / 21
2.6.1 문자 인코딩 / 21
2.6.2 단문자 / 22
2.6.3 일반적인 문자열 생성 / 23
2.6.4 문자열 연산 / 27
2.6.5 이스케이프 문자 / 28
2.7 변수와 대입 / 30
2.7.1 파이썬 식별자 / 32
2.7.2 None과 대입 / 34
2.7.3 다중대입 / 35
2.7.4 변수와 주소 / 37
2.8 사용자가 입력한 값을 변수에 대입하기 / 38
2.8.1 표준입력함수 input() / 38
2.9 서식을 포함한 문자열 / 40
2.9.1 문자열 메소드 format() / 41
2.9.2 C언어 출력 양식 / 45
8.1 함수란? / 195
8.2 파이썬 함수 작성과 일반 호출 / 196
8.2.1 실수값을 갖는 수학 함수 / 197
8.2.2 입력 또는 출력이 파이썬 자료인 함수 / 202
8.2.3 키워드인자를 사용하는 함수 / 206
8.3 반환값이 여러 개인 함수 / 208
8.4 함수 호출 / 210
8.5 반환값 또는 인자가 없는 함수 / 213
8.5.1 반환값이 없는 함수 / 213
8.5.2 인자가 없는 함수 / 214
8.6 전역변수와 지역변수 / 215
8.6.1 지역변수 / 215
8.6.2 전역변수 / 216
8.7 가변인자를 사용한 함수 정의 / 218
8.8 가변키워드 인자를 사용한 함수 정의 / 219
8.9 람다(lambda) 함수 / 220
8.10 사용자 정의함수를 활용하는 파이썬 내장함수 / 221
8.10.1 자료 정렬: sorted() / 221
8.10.2 자료 일괄 조작: map() / 224
8.10.3 자료 선택: filter() / 225
8.11 파이썬 내장함수 / 226
제9장 파이썬 클래스 / 229
9.1 클래스 / 229
9.2 클래스 작성 문법 / 230
9.2.1 클래스 생성 및 관련정보 확인 / 231
9.2.2 객체 생성 / 231
9.2.3 객체에 속성과 메소드 추가 / 232
9.2.4 클래스에 속성이나 메소드 추가 / 234
9.3 사용자정의 클래스 작성 / 236
9.3.1 초기화 메소드 : __init__( ) / 237
9.3.2 인스턴스 메소드 / 240
9.4 암호화 클래스 작성 / 242
9.4.1 암호화 클래스 / 242
9.4.2 은행 계좌 관리 클래스 / 245
9.5 클래스 속성과 인스턴스 속성 / 246
9.6 속성과 메소드 비공개 / 248
9.7 클래스메소드, 정적메소드 / 250
9.7.1 정적메소드 / 250
9.7.2 클래스메소드 / 251
9.8 클래스의 매직메소드 / 253
9.9 객체지향 프로그래밍 / 255
9.10 클래스 상속 / 260
9.10.1 자식클래스에서 부모클래스의 메소드 호출하기 / 261
9.10.2 다중상속 / 263
9.10.3 다중상속에서 메소드 탐색순서와 실행순서 / 267
9.11 추상클래스 / 268
제10장 예외 처리 및 파일 입출력 / 271
10.1 예외 처리 / 271
10.1.1 예외처리 / 272
10.1.2 try-except 구문 / 272
10.1.3 try-except-as 구문 / 273
10.1.4 try-except-else-finally 구문 / 275
10.2 파일 입출력 / 276
10.2.1 파일의 위치 / 277
10.2.2 파일 열기와 닫기 / 278
10.2.3 텍스트파일 입출력 / 279
10.2.4 파일읽기 예외처리 / 284
10.2.5 텍스트 파일에 쓰기 / 285
10.2.6 바이너리 파일 읽기 및 쓰기 / 287
10.2.7 파일 삭제 및 이름 바꾸기 / 290
제11장 모듈 및 패키지 / 291
11.1 모듈 및 패키지 / 291
11.1.1 모듈 또는 패키지 불러오기 / 292
11.2 표준모듈 소개 / 293
11.2.1 math 모듈 / 293
11.2.2 random 모듈 / 295
11.3 사용자정의 모듈 / 297
11.4 시간, 날짜 관련 모듈 / 300
11.4.1 time 모듈 / 300
11.4.2 datetime 모듈 / 303
11.4.3 datetime.timedelta 클래스 / 307