단계별 구성으로 단단하게 배우는 코딩 강화 파이썬
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

이 책은 저자가 고등학생을 대상으로 프로그래밍을 가르칠 때 마땅한 교재가 없음을 느껴 집필했습니다. 따라서 중학교 수준의 배경지식만 있으면 배울 수 있으며, 비전공자나 프로그래밍을 처음 접하는 사람도 읽을 수 있도록 내용 제시 순서를 엄격하게 지키고 있습니다. 예를 들어, 함수를 배우기 전에 print()가 함수라고 설명하지 않으며, 모듈을 배우기 전에 import하지 않습니다.
* 출판사의 사정에 따라 서비스가 변경 또는 중지될 수 있습니다.
*window7의 경우 사운드 연결이 없을시, 동영상 재생에 오류가 발생할 수 있습니다. 이어폰, 스피커 등이 연결되어 있는지 확인 하시고 재생하시기 바랍니다.
작가정보
저자(글) 이규호
성균관대학교에서 컴퓨터교육과 경영학을 전공했다. 고등학교 프로그래밍 강사로 활동하면서 입문자를 배려한 소프트웨어 교육 콘텐츠가 부족함을 느꼈고, 이를 해소하는 데 이바지하기 위해 집필을 시작했다. 명확성을 통해 감동을 추구한다. 왜 A를 배워야 하는가, 왜 B보다 먼저 배워야 하는가, 왜 C는 가르치지 않는가, 어떻게 배워야 기억에 오래 남을 것인가, 재미있게 배우려면 어떻게 해야 할까, 재미란 무엇인가, 끊임없이 질문하며 콘텐츠 연구하기를 즐긴다.
감수 권정인
현재는 상명대학교 교양대학 교수로, 비전공자 SW교육을 가르치고 있다. 성균관대학교에서 교과교육학과(컴퓨터교육 전공) 박사 학위를 취득했으며, 동 대학에서 초빙교수를 지냈다. 2015 개정 교육과정 정보컴퓨터 인정도서 심의위원으로 활동하였으며, 저서로는 《컴퓨팅 사고력 향상을 위한 문제해결과 알고리즘》(성균관대학교 출판부), 《4차 산업혁명 시대의 인터넷 윤리》(이한미디어), 《플레이봇과 놀자》(네이버 커넥트)가 있다.
목차
- LEVEL 01 있어 보이는 계산기 사용자 1
1.1 용어부터 알고 가자 2
1.1.1 프로그래밍 vs 코딩 2
1.1.2 컴퓨팅 사고 3
1.1.3 프로그래밍 언어 3
1.2 왜 하필 파이썬인가? 5
1.2.1 적용 가능한 분야가 넓다 5
1.2.2 인기 있다 6
1.2.3 학습이 쉽다 6
1.2.4 고등학교 정보 교과 교육과정에 채택되었다 6
1.3 설치와 실행 그리고 첫 프로그램 7
1.3.1 설치 7
1.3.2 실행 8
1.3.3 첫 프로그램 12
LEVEL 02 되게 만드는 명령권자 15
2.1 프로그램의 구조 16
2.1.1 컴퓨터 프로그램은 왜 필요했을까? 16
2.1.2 문제 해결을 위한 프로그램, 어떻게 만들어야 할까? 16
2.1.3 프로그램과 함수 구조 18
2.2 화면 출력 22
2.2.1 왜 알아야 하는가? 22
2.2.2 어떻게 할 수 있는가? 22
2.2.3 실습 27
2.3 주석 29
2.3.1 왜 필요한가? 29
2.3.2 사용법과 예제 29
2.4 변수와 할당연산자, 그리고 자료형 32
2.4.1 변수, 왜 필요한가? 32
2.4.2 변수, 어떻게 사용할 수 있는가? 32
2.4.3 여러 가지 자료형과 연산자 41
2.4.4 형 변환 50
2.5 키보드 입력 52
2.5.1 왜 필요한가? 52
2.5.2 어떻게 적용할 수 있는가? 52
2.5.3 실습 54
2.6 조건문 56
2.6.1 왜 필요한가? 56
2.6.2 유형과 실습 56
2.7 반복문 70
2.7.1 왜 필요한가? 70
2.7.2 어떻게 사용할 수 있는가? 70
2.7.3 실습 76
2.8 제어문 심화 80
2.8.1 제어문, 왜 심도 있게 이해해야 하는가? 80
2.8.2 어떻게 해야 더 잘 이해할 수 있는가? 80
2.8.3 실습 85
2.9 함수 90
2.9.1 왜 필요한가? 90
2.9.2 어떻게 만들고 사용할 수 있는가? 93
2.9.3 사용자 정의 함수와 내장함수 106
2.10 클래스 110
2.10.1 왜 필요한가? 110
2.10.2 사용법과 실습 114
2.11 모듈 126
2.11.1 왜 필요한가? 126
2.11.2 어떻게 사용할 수 있는가? 126
2.12 파일 입출력 135
2.12.1 왜 필요한가? 135
2.12.2 사용법과 실습 135
2.13 유제 해설 145
LEVEL 03 세련된 중재자 157
3.1 컴퓨팅 사고와 알고리즘 158
3.1.1 컴퓨팅 사고란 무엇인가? 158
3.1.2 컴퓨팅 사고는 왜 필요한가? 166
3.2 문법 이해 심화 169
3.2.1 다차원 도형과 반복문 중첩, 다차원 자료형과 리스트 내포 169
3.2.2 데이터 교환(data swap)과 튜플의 숨겨진 사용 173
3.2.3 파라미터 이해 심화 176
3.2.4 불변 자료형과 가변 자료형 180
3.2.5 이름 짓기와 영역 187
3.2.6 재귀함수 195
3.2.7 print( ) 함수 더 잘 쓰기 201
3.2.8 모듈과 패키지 205
3.3 오류와 디버깅 208
3.3.1 오류의 종류 208
3.3.2 구문 오류의 해결 208
3.3.3 실행시간 오류의 해결 208
3.3.4 버그와 디버깅 217
3.4 유제 해설 222
LEVEL 04 필드 위의 플레이어 227
4.1 레벨 4를 본격적으로 시작하기 전에 228
4.2 실습 문제 229
4.2.1 문제 풀이에 앞서 229
4.2.2 유형 1: 프로그래밍 기초 231
4.2.3 유형 2: 프로그래밍 활용 239
4.2.4 유형 3: 프로그래밍과 수학 247
4.3 알고리즘의 효율 분석과 설계 패러다임 265
4.3.1 알고리즘의 효율 비교 265
4.3.2 정렬 알고리즘 개괄 271
4.3.3 O(n2) 정렬 알고리즘 271
4.3.4 알고리즘 설계 패러다임 277
4.4 유제 해설 306
LEVEL 05 길을 찾은 여행자 323
5.1 패스워드 크래킹: 당신의 힘을 실감하라 324
5.1.1 들어가기 전에 324
5.1.2 거짓말의 이유 325
찾아보기 343
참고용 코드 347
추천사
-
“이 책은 파이썬을 이용한 프로그래밍을 알려주는 책이지만 컴퓨팅 사고를 익히는 부분을 놓치지 않고 있습니다. 코드를 만들 줄 아는 사람을 만들기 위한 책이 아니라 컴퓨팅 사고를 자연스럽게 익히고 그것을 프로그램으로 구현하기 위한 도구로서 파이썬을 배우는 것입니다. 책을 읽으면서 약간 저 자신의 집필 의욕이 꺾일 만큼 제가 고민하고 교육하고 싶었던 내용을 저자분이 놓치지 않고 책에서 설명하고 있습니다. 코딩을 배우고 싶은 학생부터 자녀의 컴퓨팅 사고 교육을 위한 고민을 하는 부모님까지, 이 책으로 한 걸음 더 목표에 가까워지리라 확신합니다.”
(《배프의 오지랖 파이썬 웹프로그래밍》 저자) -
“디지털 시대에 접어들면서 너나 할 거 없이 모든 사람이 코딩을 도구로써 이용해야 할 필요성이 생겼다. 그렇다면 코딩을 어떤 언어로 시작할 것인가를 결정해야 하는데, 파이썬은 세계적으로 가장 많이 사용되는 언어이자 중요한 프로그래밍 언어 중 하나다. 그래서인지 시중에는 파이썬 교재가 넘쳐나고 있다. 전문가가 쓴 책들은 자칫 비전공자나 사전지식이 없는 독자에게 어렵게 느껴지기도 하는데, 이 책은 비전공자를 교육해 본 경험을 토대로 집필한 노력이 곳곳에서 엿보인다. 처음 시작하는 독자에게 맞춤인 책이다.”
-
“무언가를 새롭게 학습할 때, 가장 중요한 것은 ‘어떻게 하는 거지?’에 대한 의문을 가지는 것이 아니라, ‘왜 하는 거지?’에 대한 의문을 가지는 것이라 생각한다. 그리고 이 책은 우리에게 코딩을 ‘어떻게 해야 하는지’가 아닌 ‘왜 해야 하는지’를 먼저 알려준다. 올바른 ‘프로그래밍적 사고’를 기반으로 코딩을 시작하고 싶은 분에게 이 책을 추천한다.”
-
“프로그래밍 언어를 배우는 것은 ‘컴퓨터를 배우는 일일까요?’ 아니면 ‘논리를 배우는 일일까요?’ 적어도 컴퓨터 프로그램을 만드는 일을 하는 저로서는 후자의 답을 고르겠습니다. 왜 이 답을 골랐는지는 이 책을 읽으면 알 수 있을 겁니다. 파이썬은 지금 바로 여러분이 원하는 모든 것을 마음만 먹으면 만들어낼 수 있도록 여러분을 도와줄 것입니다. “배우지 않은 것은 쓸 수 없다”고 말하는 저자가 쓴 이 책이 여러분에게 정말 컴퓨터가 즐거운 것이란 상상을 하게 만들어주리라 기대합니다. 추천인으로서 여러분에게 바라는 한 가지가 있다면 이것입니다. 두려워 마세요. 한 발자국을 내디디면 새로운 세상이 열려 있을 거예요.
(《Flask 기반의 파이썬 웹 프로그래밍》 저자) -
“단순히 파이썬 입문서나 코딩 입문서라고 부르기엔 기존 책들과 다른 책이다. 첫 장인 ‘용어부터 알고 가자’를 보면 이 책이 지향하는 바를 확실히 알 수 있는데, ‘프로그래밍’과 ‘코딩’을 정확히 정의하고 풀어 설명한다. 이처럼 용어를 민감하게 사용할 뿐만 아니라, 그 의미도 꼭 설명한다. 덕분에, 코딩 입문자도 막힘없이 따라갈 수 있다. 게다가 알고리즘까지 설명하니, 이 책을 모두 읽으면 코딩 초보를 졸업했다고 할 수 있겠다.”
(《일 잘하는 평사원의 업무 자동화》 저자) -
“개발과 교육을 업으로 삼고 있는 저도 이 책의 꼼꼼함과 자세한 설명에 깜짝 놀랐습니다. 입문자가 알아야 하는 거의 모든 내용이 이 책에 있다고 자신 있게 이야기할 수 있습니다. 이 책을 통해 여러분은 파이썬다운 프로그램 작성법, 함수와 객체 사용법, 디버깅 방법, 컴퓨터적 사고방식까지 함께 익힐 수 있을 것입니다. 더불어, 예제와 유제를 머리를 싸매며 직접 풀어 본다면 책을 덮는 순간, 한층 더 레벨업한 여러분을 만날 수 있을 거라 생각합니다.”
책 속으로
“이 나라의 모든 사람들은 프로그래밍을 배워야 한다. 왜냐하면 프로그래밍이 생각하는 방법을 가르쳐 주기 때문이다(Everybody in this country should learn how to program a computer, because it teaches you how to think).” 이는 애플의 공동 창립자 중 한 명이자 CEO였던 잡스가 남긴 말이다. 굉장히 멋진 말이고, 프로그래밍 교육의 핵심을 꿰뚫는 표현이기도 하다. 하지만 프로그래밍을 배우기 전이라면 다소 의문이 생길 수밖에 없는 표현을 포함하고 있다. 그것은 바로 ‘생각하는 방법(how to think)’이라는 단어다. 스티브 잡스는 프로그래밍을 배우지 않은 사람들을 모두 생각할 줄도 모르는 사람이라고 비난한 것일까? 물론 그렇지 않다. 잡스가 말한 ‘생각하는 방법’이란 컴퓨팅 사고를 의미한다. 그렇다면 컴퓨팅 사고란 무엇일까?
_3쪽
기계장치는 사람의 말을 알아듣지 못하므로 규칙을 정할 필요가 있었다. 이것이 원시적인 형태의 기계어, 즉 0과 1로 이루어진 약속이자 규칙이다. 학자들은 이 규칙대로 작동하는 기계를 만들고, 약속된 언어의 형태로 여러 가지 명령을 내렸다. 즉, 사람이 ‘정보 처리 절차’와 함께 ‘처리할 정보’를 기계장치에 전달하면, 기계는 계산 끝에 ‘결과’를 돌려주었다. 이때의 ‘정보 처리 절차’가 바로 컴퓨터 프로그램의 뿌리다.
_16쪽
변할 수 있는 숫자를 변수(variable)라 한다. 하지만 프로그래밍에서의 변수는 숫자보다 자료의 공간에 더 가깝다. 편의에 따라 숫자를 바꾸며 자료를 저장하는 장소로 사용하기 때문이다. 변수는 정보를 편하게 저장하고 싶은 인간의 욕구를 충족시킨다. 훗날 재사용할 목적으로 정보를 기록하는 것은 인간의 본성이다. USB 메모리스틱에 서류를 저장하거나 웹 공간에 사진을 저장하는 것은 우리가 모든 것을 머릿속에 저장하지 못하기 때문이다. 이처럼 인간은 스스로를 대신해 정보를 기억해줄 매체를 원하고, 변수가 이 욕구를 해소해줄 수 있다.
_32쪽
인간에게 큰 스트레스를 주는 작업이 여럿 있다. 그중에서도 프로그램이 대신할 만한 작업이 두 가지 있는데, 바로 판단과 반복이다. 인간은 당연히 이 두 작업을 프로그램에게 미루고자 애썼고, 성공했다. 조건문과 반복문이 그 결과물이다. 이 둘을 합쳐 제어문이라고 한다. 먼저, 조건문에 대해 알아보자. 조건문은 인간 대신 프로그램이 판단을 내릴 수 있도록 한다. 정해진 구조에 따라 조건문을 활용하면 판단 결과가 참(True)인 경우와 거짓(False)인 경우로 나누어 다른 작동하도록 명령할 수 있다. 일종의 분기점인 셈이다.
_56쪽
함수는 프로그램 제어에 필수적인 요소가 아니다. 제어문 덩어리를 묶어 정리하여 코드를 간결하게 만들어줄 뿐이기 때문이다. 하지만 그렇다고 해서 함수가 중요하지 않은 것은 결코 아니다. 코드가 간결해지면 프로그래머는 시간과 정신력을 아껴 다른 일을 할 수 있기 때문이다. 간결성의 중요함을 이해하기 위해 다음 사례를 보자.
_90쪽
출판사 서평
기초부터 차근차근 나선형 구조로 배우는 진짜 입문서!
이 책은 저자가 고등학생을 대상으로 프로그래밍을 가르칠 때 마땅한 교재가 없음을 느껴 집필했습니다. 따라서 중학교 수준의 배경지식만 있으면 배울 수 있으며, 비전공자나 프로그래밍을 처음 접하는 사람도 읽을 수 있도록 내용 제시 순서를 엄격하게 지키고 있습니다. 예를 들어, 함수를 배우기 전에 print()가 함수라고 설명하지 않으며, 모듈을 배우기 전에 import하지 않습니다.
혼자 공부하는 독자를 배려하여 내용을 쉽게 이해할 수 있도록 도와주는 ‘노트’나 공부하면서 생길 수 있는 궁금증을 해결해 주는 ‘Q&A’ 등 다양한 참고 요소를 활용하였습니다. 또한, 강의 교재로도 사용할 수 있도록 기존의 따라 하기 방식의 입문서 형태에서 벗어나 설명 => 예제 => 유제로 이어지는 체계적인 구성으로 설명하고 있습니다.
이 책의 대상 독자
● 블록 코딩에서 텍스트 코딩으로 나아가고 싶은 중학생
● 정보 교과서의 내용을 예습/복습하고 싶은 고등학생
● 학부 과정 기초 프로그래밍 수업을 더 잘 이해하고 싶은 대학생
● 비전공자이지만 프로그래밍을 배우고 싶은 일반인
● 무작정 따라 하는 주입식 학습에 지쳐 있는 모든 프로그래밍 입문자
기본정보
ISBN | 9791188621569 ( 1188621564 ) |
---|---|
발행(출시)일자 | 2019년 06월 28일 |
쪽수 | 368쪽 |
크기 |
189 * 245
* 21
mm
/ 740 g
|
총권수 | 1권 |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립