서브메뉴

본문

헬로! 파이썬 프로그래밍 (쉽고 재미있게 프로그래밍 배우기)
헬로! 파이썬 프로그래밍 (쉽고 재미있게 프로그래밍 배우기)
저자 : 워렌 산데|카터 산데
출판사 : 위키북스
출판년 : 2015
ISBN : 9791158390112

책소개

파이썬에 매료된 저자와 그의 아들이 함께 프로그래밍을 배워나가면서 간단한 프로그램부터 그래픽과 사운드가 가미된 게임까지 만드는 과정을 그렸다. 컴퓨터 프로그래밍을 처음 접하는 이들의 눈높이에 맞춰 프로그래밍의 개념과 원리를 친절하고 상세하게 소개함으로써 프로그래밍의 핵심 원리를 단계별로 이해하고, 프로그래밍 언어의 구조와 원리뿐 아니라 문제 해결과 이를 위한 사고 방식을 자연스럽고 체계적으로 익힐 수 있다.



이 책은 전 세계적으로 호평받은 '헬로! 파이썬 프로그래밍'의 개정판으로서, 전면 컬러로 바뀌어 코드를 이해하기가 훨씬 수월해졌다. 그뿐만 아니라 파이썬 2와 파이썬 3의 차이점을 비롯해 개선된 GUI 제작 기법, 딕셔너리, 인공지능 등 다양하고 깊이 있는 내용까지 더해져서 프로그래밍을 처음 시작하는 분들이 기초와 실무를 탄탄히 다지는 데 도움될 것이다.
[알라딘에서 제공한 정보입니다.]

출판사 서평

책 소개

전 세계적으로 인정받은 (파이썬) 프로그래밍 입문서!


간결한 문법과 강력한 기능이 돋보이는 파이썬(Python)은 오늘날 가장 인기 있는 프로그래밍 언어로서 프로그래밍 입문자는 물론 전문 프로그래머들의 사랑을 독차지하고 있다.

이 책에서는 파이썬에 매료된 저자와 그의 아들이 함께 프로그래밍을 배워나가면서 간단한 프로그램부터 그래픽과 사운드가 가미된 게임까지 만드는 과정을 그렸다. 컴퓨터 프로그래밍을 처음 접하는 이들의 눈높이에 맞춰 프로그래밍의 개념과 원리를 친절하고 상세하게 소개함으로써 프로그래밍의 핵심 원리를 단계별로 이해하고, 프로그래밍 언어의 구조와 원리뿐 아니라 문제 해결과 이를 위한 사고 방식을 자연스럽고 체계적으로 익힐 수 있다.

이 책은 전 세계적으로 호평받은 『헬로! 파이썬 프로그래밍』의 개정판으로서, 전면 컬러로 바뀌어 코드를 이해하기가 훨씬 수월해졌다. 그뿐만 아니라 파이썬 2와 파이썬 3의 차이점을 비롯해 개선된 GUI 제작 기법, 딕셔너리, 인공지능 등 다양하고 깊이 있는 내용까지 더해져서 프로그래밍을 처음 시작하는 분들이 기초와 실무를 탄탄히 다지는 데 도움될 것이다.

출판사 리뷰

파이썬으로 쉽고 재미있게 프로그래밍 배우기


컴퓨터 언어로 컴퓨터와 대화하는 법을 배우세요! 게임을 만들거나 사업을 시작하거나 중요한 문제를 풀고 싶다면 첫 번째 단계는 여러분만의 프로그램을 작성하는 법을 배우는 것입니다. 프로그래밍은 재미있는 도전이며, 시작하기도 쉽습니다!

『헬로! 파이썬 프로그래밍』의 개정판인 이 책에서는 컴퓨터 프로그래밍의 세계를 명료하고 매력적인 방식으로 소개합니다. 워렌 산데와 그의 아들인 카터가 쓴 이 책은 사고와 학습을 돕는 예제로 가득합니다. 전문 교육자가 검토한 이 책은 어린이와 어른들에게서 검증받은 책입니다.

이 책을 읽기에 앞서 미리 알아둬야 할 프로그래밍 지식은 없으며 기초적인 컴퓨터 사용법만 알면 됩니다. 프로그램을 실행하고 파일을 저장할 수 있다면 바로 이 책을 시작할 수 있습니다!

★ 이 책의 특징 ★

▣ 개념들을 명료하게 설명합니다.
▣ 그림, 만화, 재미있는 예제가 가득합니다.
▣ 간단한 퀴즈와 연습 문제가 들어있습니다.
▣ 컬러로 된 아름다운 삽화가 들어있습니다.
[교보문고에서 제공한 정보입니다.]

목차정보

▣ 01장: 시작하기

파이썬 설치

IDLE을 이용해 파이썬 시작하기

명령을 내려 주세요

프로그램이 동작하지 않는다면

파이썬과의 상호작용

프로그래밍할 시간

첫 번째 프로그램 실행하기

뭔가가 잘못됐다면

- 구문 오류

- 런타임 오류

두 번째 프로그램



▣ 02장: 기억하세요 - 메모리와 변수

입력, 처리, 출력

이름

이름 안에는 뭐가 들었을까?

숫자와 문자열

- 긴 문자열

왜 '변수'인가?

새로운 나



▣ 03장: 기초 수학

4가지 기초 연산

연산자

연산의 순서

연산자 두 개 더

- 지수 연산 - 제곱

- 나머지 연산 - 나머지 구하기

- 증가 연산자와 감소 연산자

정말로 큰 수와 정말로 작은 수

- E-표기법

- 지수승 vs. E-표기법



▣ 04장: 자료형

자료형 바꾸기

- 정수를 실수로 바꾸기

- 실수를 정수로 바꾸기

- 문자열을 실수로 바꾸기

정보를 더 얻는 방법: type()

형변환 오류

형변환 이용하기



▣ 05장: 입력

raw_input()

print 명령어와 콤마

- 더 간편한 raw_input() 입력 요청 메시지

숫자 입력하기

- int()와 raw_input() 함께 쓰기

웹에서 입력받기



▣ 06장: GUI(그래픽 사용자 인터페이스)

GUI란?

첫 번째 GUI

- EasyGui 설치

- 파이썬 경로

- GUI 만들기

GUI 입력

좋아하는 맛 고르기

- 버튼이 여러 개인 대화상자

- 선택 상자

- 텍스트 입력

- 기본 입력

- 숫자 입력

숫자 알아맞히기 게임... 한번 더!

기타 GUI 요소



▣ 07장: 판단과 결정

테스트

들여쓰기

내 눈엔 두 개로 보이는데?

다른 종류의 검사

검사 결과가 거짓이면 어떻게 될까?

조건을 2개 이상 검사하기

and 사용하기

or 사용하기

not 사용하기



▣ 08장: 반복문

계수 반복

- 폭주하는 반복문

- 대괄호의 용도

계수 반복문 사용하기

손쉬운 방법 - range()

스타일의 문제 - 반복 변수명

- 더 쓰기 쉬운 range()

간격을 두고 세기

숫자 없이 세기

조건을 만족하는 동안

반복문에서 벗어나기 - break와 continue

- 앞으로 건너뛰기 - continue

- 빠져 나오기 - break



▣ 09장: 주석

주석 추가하기

한 줄 주석

줄 끝 주석

여러 줄 주석

삼중 따옴표 문자열

주석 스타일

이 책의 주석

주석 처리



▣ 10장: 게임할 시간

스키어



▣ 11장: 중첩 반복문과 가변 반복문

중첩 반복문

가변 반복문

가변 중첩 반복문

훨씬 더 가변적인 중첩 반복문

중첩 반복문 사용하기

열량 계산하기



▣ 12장: 함께 모으기 - 리스트와 딕셔너리

리스트란?

리스트 만들기

리스트에 항목 추가하기

점은 뭘까?

리스트는 무엇이든 담을 수 있다

- 인덱스는 왜 1이 아닌 0부터 시작할까?

리스트 "자르기"

- 간편한 잘라내기

항목 수정하기

리스트에 항목을 추가하는 다른 방법

- 끝에 추가하기: append()

- 리스트 확장하기: extend()

- 항목 삽입하기: insert()

- append()와 extend()의 차이점

리스트에서 삭제하기

- remove()를 이용한 삭제

- del을 이용한 삭제

- pop()을 이용한 삭제

리스트에서 찾기

- in 키워드

- 인덱스 찾기

리스트 순회하기

리스트 정렬하기

- 역순으로 정렬하기

- 정렬하는 또 다른 방법: sorted()

변경 가능한 것과 변경 불가능한 것

- 튜플: 불변 리스트

리스트의 리스트: 데이터 테이블

- 테이블에서 값 하나 가져오기

딕셔너리



▣ 13장: 함수

함수: 집짓기 블록

- 함수 만들기

함수 호출하기

함수에 인자 전달하기

인자가 두 개 이상인 함수

- 몇 개가 적당할까?

값을 반환하는 함수

- 값 반환하기

변수 유효범위

- 지역 변수

- 전역 변수

함수 안에서 전역 변수 사용하기

변수명 짓기에 대한 조언



▣ 14장: 함수

현실 세계의 객체

파이썬의 객체

- 속성이란?

- 메서드란?

객체 = 속성 + 메서드

점은 무엇입니까?

객체 만들기

- 객체의 인스턴스 만들기

- 객체 초기화

- "마법" 메서드: __str__()

- self란?

예제 클래스 - HotDog

데이터 숨기기

다형성과 상속

- 다형성: 동일한 메서드, 다른 동작 방식

- 상속: 부모로부터 배우기

미리 생각해보기



▣ 15장: 모듈

모듈이란?

왜 모듈을 사용할까?

블록을 담는 통

모듈은 어떻게 만들까?

모듈은 어떻게 사용할까?

이름공간

- 이름공간이란?

- 이름공간 가져오기

- from을 이용한 가져오기

- 휴!

표준 모듈

시간

난수



▣ 16장: 그래픽

도움 얻기 - 파이게임

파이게임 창

창 안에 그리기

- '플립'이란?

- 원을 만드는 법

- 파이게임 표면

- 파이게임에서 색상 다루기

- 위치: 화면 좌표

- 도형의 크기

- 선 두께

- 현대 미술?

개별 픽셀

- 점 잇기

- 다시 한 번 점 잇기

- 점으로 그리기

이미지

공을 움직여 봅시다!

애니메이션

- 이미지 지우기

- 밑에는 뭐가 있을까?

더 부드러운 애니메이션

- 공이 계속 움직이게 하기

공 튕기기

- 2D로 튕기기

공이 돌아서 나오게 만들기



▣ 17장: 스프라이트와 충돌 감지

스프라이트

- 스프라이트란?

- 스프라이트 클래스

- move() 메서드

쿵! 충돌 감지

- 사각 영역 충돌 vs. 픽셀 단위 충돌

시간 재기

- pygame.time.Clock()을 이용한 프레임률 조절

- 프레임률 검사하기

프레임률 조절하기



▣ 18장: 새로운 종류의 입력 - 이벤트

이벤트

- 이벤트 루프

- 이벤트 큐

- 이벤트 처리자

키보드 이벤트

- 키 이벤트

- 반복 키

- 이벤트 이름과 키 이름

마우스 이벤트

타이머 이벤트

다른 게임을 해볼 시간: 파이퐁(PyPong)

- 공

- 패들

- 패들 조종

- 점수 기록 및 pygame.font를 이용한 점수 표시

- 생명 관리하기

- 생명 카운터 추가하기

- 게임 종료



▣ 19장: 사운드

파이게임 활용하기 - mixer

사운드 만들기 vs. 사운드 재생하기

사운드 재생

- pygame.mixer 시작하기

볼륨 조절

- 배경음악 재생하기

음악 반복하기

파이퐁에 사운드 추가하기

더 익살스러운 사운드

파이퐁에 음악 추가하기



▣ 20장: GUI 더 알아보기

PyQt 활용하기

- Qt 디자이너

- 버튼 추가하기

- 버튼 변경하기

- GUI 저장하기

GUI 작동시키기

이벤트 처리자의 귀환

- self란?

버튼 움직이기

더 유용한 GUI

TempGUI

- TempGUI 컴포넌트

- 새 GUI 만들기

- 섭씨를 화씨로 변환하기

- 화씨를 섭씨로 변환하기

- 작은 개선

- 버그 때려잡기

메뉴에 뭐가 있죠?

- 메뉴 항목 추가하기

- 단축키



▣ 21장: 출력 서식 지정과 문자열

새로운 줄

- print와 콤마

- 줄바꿈 추가하기

- 특별한 출력 코드

수평 간격: 탭

- 백슬래시를 출력하는 법

문자열에 변수 넣기

숫자 서식 지정

- 정수: %d나 %i

수: %f나 %F

- E-표기법: %e와 %E

- 실수 표기법이나 E-표기법 자동으로 선택하기: %g와 %G

- 퍼센트 기호 출력하기

- 여러 개의 서식 문자열

- 서식 지정된 숫자 저장하기

새로운 방식의 서식 지정

- format() 메서드

- 문자열 조작

- 문자열 분리하기

- 문자열 합치기

- 문자열 검색

- 문자열 내 아무 곳에서나 찾기: in과 index()

- 문자열에서 일부분 삭제하기

- 대소문자 바꾸기



▣ 22장: 파일 입출력

파일이란?

파일명

파일의 위치

- 현재 위치 찾기

- 경로 이야기는 이제 그만!

파일 열기

파일 읽기

- 한 번에 한 줄씩 읽기

- 처음으로 되돌아가기

텍스트 파일과 바이너리 파일

파일에 쓰기

- 파일에 추가하기

- 파일에 쓰기

- print를 이용해 파일에 쓰기

파일에 저장하기: pickle

피클링

- 언피클링

다시 게임 할 시간: 행맨

- 행맨 GUI

- 단어 목록에서 단어 가져오기

- 사람 보여주기

- 글자 추측 검사하기



▣ 23장: 기회를 잡아라 - 무작위성

무작위성이란?

주사위 굴리기

- 여러 개의 주사위

- 10번 연속된 사건

카드 패 만들기

- 카드 패 섞기

- 카드 객체

크레이지 8

- 주 반복문

- 뒤집힌 카드

- 유효한 무늬

- 플레이어 차례

- 손에 든 카드 보여주기

- 플레이어의 선택 확인하기

- 컴퓨터 차례

- 점수 관리하기



▣ 24장: 컴퓨터 시뮬레이션

현실 세계 모델링하기

달 착륙선

- 착륙 시뮬레이션하기

- 파이게임의 귀환

시간 관리

시간 객체

- 두 시간의 차이

- 짧은 단위의 시간

시간을 파일에 저장하기

가상 애완동물

GUI

- 알고리즘

- 간단한 애니메이션

- 시도하고, 또 시도하기



▣ 25장: 스키어 설명

스키어

장애물

- 개별 장애물 만들기

- 장애물 지도 만들기



▣ 26장: 파이썬 전투

파이썬 전투

- 파이썬 전투 실행하기

- 게임 규칙

파이썬 전투 로봇 만들기

좀 더 복잡한 로봇

좌표계

- 방향

- calculateCoordinates()



▣ 27장: 또 뭘 배워야 할까?

초급 프로그래머를 위한 자료

파이썬

게임 프로그래밍과 파이게임

기타 게임 프로그래밍(파이썬 이외의 환경)

BASIC

모바일 앱

주위를 둘러보세요



▣ 부록 A장: 변수 명명규칙



▣ 부록 B장: print

파이썬 2와 파이썬 3의 차이점

input()

정수 나눗셈

range()

파이썬 2에서 파이썬 3으로 변환하기



▣ 부록 C장: 연습 문제 해답
[알라딘에서 제공한 정보입니다.]