이 책은 파이썬 프로그래밍의 포괄적 내용을 기반으로 다음과 같이 세 개의 그룹으로 나누어져 있다. 초반부 장은 프로그래밍 이해를 위한 기본 개념을 제공하고 간단한 예제와 연습문제를 통해 학생들에게 프로그래밍의 가이드라인을 제공한다. 이후 장부터는 파이썬 프로그래밍을 좀 더 상세히 살펴보고, 파이썬 프로그래밍을 활용한 응용 개발에 대한 내용을 다룬다.
Part Ⅰ: 프로그래밍 기초(1∼6장)
이 책의 첫 번째 부분은 차근차근 계단을 밟고 올라가듯 프로그래밍 학습의 기초 단계에 해당된다. 파이썬이 무엇인지를 1장에서 소개하는 것부터 시작하여, 2∼3장에서 데이터 타입, 변수, 상수, 할당, 표현식, 연산자, 객체, 함수와 문자열 연산 등에 관한 기본적인 프로그래밍 기법을 학습한다. 또한 선택문(4장), 루프(5장), 함수(6장)를 이 부분에서 다룬다.
Part Ⅱ: 객체지향 프로그래밍(7∼13장)
이 책의 두 번째 부분은 객체지향 프로그래밍에 대해서 다룬다. 파이썬은 소프트웨어 개발에서 유연성, 모듈성, 재사용성을 제공하는 추상화, 캡슐화, 상속, 다형성의 특징을 지닌 객체지향 언어이다. 이 부분에서 객체지향 프로그래밍(7∼8장), Tkinter를 이용한 GUI 프로그래밍(9장), 리스트(10장), 다차원 리스트(11장)를 학습한다. 또한 12장에서 상속, 다형성, 클래스 설계를 학습하며, 13장에서 파일과 예외 처리를 다룬다.
Part Ⅲ: 데이터 구조와 알고리즘(14∼15장)
이 책의 세 번째 부분은 데이터 구조에서 다루는 주요 주제들을 파이썬 프로그래밍 관점에서 기본적인 개념을 다룬다. 14장은 파이썬의 내장 데이터 구조인 튜플, 세트, 딕셔너리를 다룬다. 15장에서 재귀 문제의 해결을 위한 재귀 함수의 작성에 대해서 살펴본다.
CHAPTER 1 컴퓨터 및 프로그램과 파이썬 소개
1.1 들어가기
1.2 컴퓨터란 무엇인가?
1.3 프로그래밍 언어
1.4 운영체제
1.5 파이썬의 역사
1.6 파이썬 시작하기
1.7 프로그래밍 스타일과 문서화
1.8 프로그래밍 오류
1.9 그래픽 프로그래밍 시작하기
연습문제
CHAPTER 2 프로그래밍 기초
2.1 들어가기
2.2 간단한 프로그램 작성하기
2.3 콘솔에서 입력 받기
2.4 식별자
2.5 변수, 할당문과 표현식
2.6 동시 할당문
2.7 이름 상수
2.8 수치 데이터 타입과 연산자
2.9 표현식과 연산자 우선순위
2.10 확장 할당 연산자
2.11 타입 변환과 반올림
2.12 사례 연구: 현재 시간 출력하기
2.13 소프트웨어 개발 과정
2.14 사례 연구: 거리 계산하기
연습문제
CHAPTER 3 수학 함수, 문자열 및 객체
3.1 들어가기
3.2 공통 파이썬 함수
3.3 문자열 및 문자
3.4 사례 연구: 최소 동전 개수 계산하기
3.5 객체와 메소드의 개념
3.6 숫자 및 문자 서식 지정하기
3.7 다양한 도형 그리기
3.8 색 및 폰트 지정하기
연습문제
CHAPTER 4 선택문
4.1 들어가기
4.2 부울 타입, 부울값과 부울식
4.3 랜덤 숫자 생성하기
4.4 if 문
4.5 사례 연구: 생일 맞히기
4.6 이중 if-else 문
4.7 중첩 if 문과 다중 if-elif-else 문
4.8 선택문에서 흔히 발생하는 오류들
4.9 사례 연구: 체질량 지수 계산하기
4.10 사례 연구: 세금 계산하기
4.11 논리연산자
4.12 사례 연구: 윤년 판별하기
4.13 사례 연구: 복권
4.14 조건식
4.15 연산자 우선순위와 결합법칙
4.16 객체의 위치 파악하기
연습문제
CHAPTER 5 루프
5.1 들어가기
5.2 while 문
5.3 for 루프
5.4 중첩 루프
5.5 수치 오차 최소화하기
5.6 사례 연구
5.7 break와 continue 키워드
5.8 사례 연구: 소수 출력하기
5.9 사례 연구: 랜덤 워크
연습문제
CHAPTER 6 함수
6.1 들어가기
6.2 함수 정의하기
6.3 함수 호출하기
6.4 반환값이 있는 함수 혹은 반환값이 없는 함수
6.5 위치 인자와 키워드 인자
6.6 참조값에 의한 인자 전달
6.7 코드 모듈화하기
6.8 사례 연구: 10진수를 16진수로 변환하기
6.9 변수의 스코프
6.10 기본 인자
6.11 다중값 반환하기
6.12 사례 연구: 랜덤 ASCII 문자 생성하기
6.13 함수 추상화와 단계적 개선
6.14 사례 연구: 재사용 가능한 그래픽 함수
연습문제
CHAPTER 7 객체와 클래스
7.1 들어가기
7.2 객체를 위한 클래스 정의하기
7.3 UML 클래스 다이어그램
7.4 변경불가능 객체와 변경가능 객체
7.5 데이터 필드 감추기
7.6 클래스 추상화와 캡슐화
7.7 객체지향적으로 생각하기
연습문제
CHAPTER 8 문자열과 특수 메소드
8.1 들어가기
8.2 str 클래스
8.3 사례 연구: 회문 검사하기
8.4 사례 연구: 16진수를 10진수로 변환하기
8.5 연산자 오버로딩과 특수 메소드
8.6 사례 연구: Rational 클래스
연습문제
CHAPTER 9 Tkinter를 이용한 GUI 프로그래밍
9.1 들어가기
9.2 Tkinter 시작하기
9.3 이벤트 처리하기
9.4 위젯 클래스
9.5 캔버스
9.6 기하 관리자
9.7 사례연구: 대출 계산기
9.8 이미지 출력하기
9.9 메뉴
9.10. 팝업 메뉴
9.11 마우스, 키보드 이벤트와 바인딩
9.12 애니메이션
9.13 스크롤바
9.14 표준 다이얼로그 박스
연습문제
CHAPTER 10 리스트
10.1 들어가기
10.2 리스트 기초
10.3 사례 연구: 로또 번호 생성기
10.4 사례 연구: 카드팩
10.5 카드팩 GUI
10.6 리스트 복사하기
10.7 함수에 리스트 전달하기
10.8 함수에서 리스트 반환하기
10.9 사례 연구: 문자 빈도수 세기
10.10 리스트 검색하기
10.11 리스트 정렬하기
10.12 사례 연구: 공 튕기기
연습문제
CHAPTER 11 다차원 리스트
11.1 들어가기
11.2 2차원 리스트 처리하기
11.3 2차원 리스트 함수에 전달하기
11.4 사례 연구: 객관식 문제 평가하기
11.5 사례 연구: 가장 가까운 짝 찾기
11.6 GUI: 가까운 짝 찾기
11.7 사례 연구: 스도쿠
11.8 사례 연구: 스도쿠 GUI
11.9 다차원 리스트
연습문제
CHAPTER 12 상속과 다형성
12.1 들어가기
12.2 슈퍼 클래스와 서브 클래스
12.3 메소드 오버라이딩하기
12.4 object 클래스
12.5 다형성과 동적 바인딩
12.6 isinstance 함수
12.7 사례 연구: 재사용 가능 시계
12.8 클래스 관계
12.9 사례 연구: Course 클래스 설계하기
12.10 스택 클래스 설계하기
12.11 사례 연구: FigureCanvas 클래스
연습문제
CHAPTER 13 파일과 예외 처리
13.1 들어가기
13.2 텍스트 입력과 출력
13.3 파일 다이얼로그
13.4 사례 연구: 파일의 각 문자별 문자의 개수 세기
13.5 웹에서 데이터 획득하기
13.6 예외 처리
13.7 예외 발생시키기
13.8 Exception 객체를 사용하여 예외 처리하기
13.9 사용자 정의 예외 클래스 정의하기
13.10 Pickling을 사용한 바이너리 IO
13.11 사례 연구: 주소록
연습문제
CHAPTER 14 튜플, 세트, 딕셔너리
14.1 들어가기
14.2 튜플
14.3 세트
14.4 세트와 리스트의 성능 비교
14.5 사례 연구: 키워드 세기
14.6 딕셔너리
14.7 사례 연구: 단어의 빈도수 세기
연습문제
CHAPTER 15 재귀
15.1 들어가기
15.2 사례 연구: 팩토리얼 계산하기
15.3 사례 연구: 피보나치 수 계산하기
15.4 재귀를 통한 문제해결
15.5 재귀 도우미 함수
15.6 사례 연구: 디렉터리 크기 계산하기
15.7 사례 연구: 하노이 타워
15.8 사례 연구: 프랙탈
15.9 사례 연구: 8퀸 문제
15.10 재귀 vs. 반복
15.11 꼬리 재귀
연습문제
부록
Y. 다니엘 리앙 (집필)
중국 푸단 대학 컴퓨터공학 학사
중국 푸단 대학 컴퓨터공학 석사
미국 오클라호마 대학교 컴퓨터공학 박사
SIAM Journal on Computing, Discrete Applied Mathematics, Acta Informatics 및 Information Processing Letters 등의 저널에 다수의 논문 발표
길준민 (번역)
고려대학교 전산학과(학사)
고려대학교 대학원 전산학과(석사)
고려대학교 대학원 전산과학과(박사)
Univ. of Illinois at Chicago, Visiting Scholar
한국과학기술정보연구원 슈퍼컴퓨팅센터 선임연구원
현재: 대구가톨릭대학교 IT공학부 교수
정재화 (번역)
고려대학교 학사
고려대학교 대학원 컴퓨터 및 정보과학(석사)
고려대학교 대학원 컴퓨터 및 정보과학(박사)
Indiana University, Instructional Systems Technology, Visiting Scholar
현재: 한국방송통신대학교 컴퓨터과학과 교수
My Page>내 주문내역>교환/추가배송 신청/확인, 1:1 고객상담, 고객센터(1644-1232)
(신청 → 교환상품 → 재발송 → 하자상품과 교환상품 교환) 과정 처리
이미 배송받은 상품의 오배송(다른 상품 배송), 훼손, 누락에 한함
■ 교환/추가배송 가능 기간배송완료 후 15일 이내
■ 반품/환불 안내
반품환불은 수령하신 날로부터 15일 이내에 원하시는 택배사를 선택하여 선불 택배로 반품,
배송 시 동봉된 거래명세서 뒷면 '환불신청서'를 작성하시고 환불 받으실 교재를 훼손되지 않도록 택배밀봉포장을 하여 출판문화원물류센터 주소로 보내주셔야 합니다.
반품처 : (우 11046) 경기도 연천군 미산면 청정로 755번길 53 한국방송대출판문화원 물류센터 ☎ 1644-1232
타 도서로의 교환이 불가하며, 반납도서 중 훼손 및 오손, 낙서, 워크북 누락 등 정상품 이 아닌 경우 환불이 불가하여 부득이 착불반송 또는 폐기처리 됩니다.
접수된 교환/추가배송 신청 중 귀책사유가 불분명한 경우 원인 규명으로 인하여 처리가 지연될 수 있습니다.