Главная страница
qrcode

Python для детей и родителей. Guide to python programming


НазваниеGuide to python programming
Дата07.07.2021
Размер16.1 Mb.
Формат файлаpdf
Имя файлаPython для детей и родителей.pdf
оригинальный pdf просмотр
ТипGuide
#47404
страница1 из 28
Каталог
  1   2   3   4   5   6   7   8   9   ...   28
TEACH
YOUR KIDS
TO CODE
BRYSON PAYNE
TEACH
TEACH
TEACH
YOUR KIDS
YOUR KIDS
YOUR KIDS
TO CODE
TO CODE
TO CODE
A PARENT-FRIENDLY GUIDE TO PYTHON PROGRAMMING
PYTHON
ДЛЯ ДЕТЕЙ
И РОДИТЕЛЕЙ
БРАЙСОН ПЭЙН
PYTHON
PYTHON
PYTHON
ДЛЯ ДЕТЕЙ
ДЛЯ ДЕТЕЙ
ДЛЯ ДЕТЕЙ
И РОДИТЕЛЕЙ
И РОДИТЕЛЕЙ
И РОДИТЕЛЕЙ
ИГРАЙ И ПРОГРАММИРУЙ
МОСКВА
2017
 004.43-053.2

 32.973.26-018.1

97
Bryson Payne
TEACH YOUR KIDS TO CODE
Copyright © 2015 by Bryson Payne. Title of English-language original:
Teach Your Kids to Code, ISBN 978-1-59327-614-0, published by No Starch Press.
All rights reserved
,  .
Python     /     ; [ .  .
..  ]. —  :

   «», 2017. — 352 . : . —
(    ).
  —   !"   #!" $   %   ,
      # & %  #''* .
+'<  "     '&  <  *=     ! ?  
    ! Python,

   !" ' !"  !". ?!    
 '&  –  !",   !" #!",  ' %  #   '< .       '  ,  ' '    '  
!   .
004.43-053.2
 32.973.26-018.1
Âñå ïðàâà çàùèùåíû. Êíèãà èëè ëþáàÿ åå ÷àñòü íå ìîæåò áûòü ñêîïèðîâàíà, âîñïðîèçâåäåíà â ýëåêòðîííîé
èëè ìåõàíè÷åñêîé ôîðìå, â âèäå ôîòîêîïèè, çàïèñè â ïàìÿòü ÝÂÌ, ðåïðîäóêöèè èëè êàêèì-ëèáî èíûì
ñïîñîáîì, à òàêæå èñïîëüçîâàíà â ëþáîé èíôîðìàöèîííîé ñèñòåìå áåç ïîëó÷åíèÿ ðàçðåøåíèÿ îò èçäàòåëÿ.
Êîïèðîâàíèå, âîñïðîèçâåäåíèå è èíîå èñïîëüçîâàíèå êíèãè èëè åå ÷àñòè áåç ñîãëàñèÿ èçäàòåëÿ ÿâëÿåòñÿ
íåçàêîííûì è âëå÷åò óãîëîâíóþ, àäìèíèñòðàòèâíóþ è ãðàæäàíñêóþ îòâåòñòâåííîñòü.
Ïîñîáèå äëÿ ðàçâèâàþùåãî îáó÷åíèÿ
ÏÐÎÃÐÀÌÌÈÐÎÂÀÍÈÅ ÄËß ÄÅÒÅÉ
Ïýéí Áðàéñîí
PYTHON ÄËß ÄÅÒÅÉ È ÐÎÄÈÒÅËÅÉ
Äèðåêòîð ðåäàêöèè Å. Êàïü¸â
Îòâåòñòâåííûé ðåäàêòîð Å. Èñòîìèíà
Õóäîæåñòâåííûé ðåäàêòîð À. Ãóñåâ
Ïîäïèñàíî â ïå÷àòü 19.12.2016. Ôîðìàò 70x100 1
/
16
Ïå÷àòü îôñåòíàÿ. Óñë. ïå÷. ë. 28,52.
Òèðàæ ýêç. Çàêàç
97
ISBN 978-5-699-95169-7
©  ..,      , 2017
©  .  «!"  «#», 2017
ООО «Издательство «Э»
123308, Москва, ул. Зорге, д. 1. Тел. 8 (495) 411-68-86.
ндіруші: «Э» АБ Баспасы, 123308, Мскеу, Ресей, Зорге к#шесі, 1 $й.
Тел. 8 (495) 411-68-86.
Тауар белгісі: «Э»
аза&стан Республикасында дистрибьютор жне #нім бойынша арыз-талаптарды &абылдаушыны7
#кілі «РДЦ-Алматы» ЖШС, Алматы &., Домбровский к#ш., 3«а», литер Б, офис 1.
Тел.: 8 (727) 251-59-89/90/91/92, факс: 8 (727) 251 58 12 вн. 107.
німні7 жарамдылы& мерзімі шектелмеген.
Сертификация туралы а&парат сайтта ндіруші «Э»
Сведения о подтверждении соответствия издания согласно законодательству РФ о техническом регулировании можно получить на сайте Издательства «Э»
ндірген мемлекет: Ресей
Сертификация &арастырылмаHан
ОТЗЫВЫ О КНИГЕ
«Ясный и четкий текст, привлекательные иллюстрации и потрясающие приложения. Получать удовольствие от этого справочника по программированию смогут и родители, и дети». — Аарон Уолкер, эксперт по безопасности в киберпространстве, NASA.
«Дает строительные блоки для замечательного будущего в быстро меняющемся мире технологий». — Джоан Тейлор, бывший вице-президент
Global Telecommunications, IBM.
«У каждого ребенка на планете должна быть эта книга, и у родителя тоже». — Джеймс Е. Дэниел-младший, учредитель App Studios, LLC.
«Жаль, что у меня не было такой книги в детстве». — Скотт Хэнд, разработчик программного обеспечения, CareerBuilder.
6
Оглавление
ОГЛАВЛЕНИЕ
Отзывы о книге
5
Введение. Что такое программирование и почему оно полезно для детей?
10
Почему дети должны изучать программирование? . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Где дети могут научиться писать код? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Как пользоваться этой книгой . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Глава 1. Основы Python: Знакомство со средой
16
Начало работы с Python. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Написание программ на Python. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Запуск программ на Python. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Глава 2. «Черепашья» графика: рисование с Python
25
Наша первая программа turtle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Черепашка в ударе. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Черепашка закругляется . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Добавим красок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Одна переменная, управляющая всей программой . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Глава 3. Числа и переменные: Python делает подсчеты
45
Переменные: место, где мы храним данные. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Числа и математика в Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Строки: реальные символы в Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Улучшим нашу спираль с помощью текста . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Списки: храним все в одном месте . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Python делает ваше домашнее задание. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Глава 4. Циклы — это весело (повторите пару раз)
69
Создание собственных циклов for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Улучшение программы с розеткой с помощью пользовательского ввода . . . . . . . . . 75
Игровые циклы и циклы while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Семейная спираль. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Сведем все вместе: спираль уходит в народ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Глава 5. Условия (Что если?)
94
Выражение if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Оглавление
7
Встречаем булевы выражения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Выражения else. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Выражения elif. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Сложные условия: if, and, or, not . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Секретные послания. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Глава 6. Случайное веселье и игры: на удачу!
126
Игра на угадывание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Цветные случайные спирали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Камень, ножницы, бумага . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Выберите карту, любую карту . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Кидаем кубики: игра в кости в стиле яцзы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Калейдоскоп. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Глава 7. Функции: да, у этого есть название
166
Соберем все вместе с функциями. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Параметры: покормите свою функцию. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Return
: важно не то, что ты получаешь, важно то, что ты возвращаешь . . . . . . . . 179
Прикосновение интерактивности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
ClickKaleidoscope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Глава 8. Таймеры и анимация: как поступил бы Дисней? 202
Использование графического интерфейса Pygame. . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Правильный тайминг: двигайся и прыгай . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Глава 9. Взаимодействие с пользователем: подключаемся к игре
237
Добавление интерактивности: щелкни и перетащи . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Улучшенная интерактивность: взрыв из смайликов . . . . . . . . . . . . . . . . . . . . . . . . . . 245
SmileyPop, версия 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Глава 10. Программирование игр: кодинг для развлечения
263
Создание каркаса игры: Smiley Pong, версия 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Усложнение и конец игры: Smiley Pong, версия 2.0. . . . . . . . . . . . . . . . . . . . . . . . . . . 278
Добавление новых функций: SmileyPop 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Что вы узнали . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Задачи по программированию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Приложение А. Установка Python в среде Windows, macOS и Linux
298
Python для Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Python для macOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Python для Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Приложение Б. Установка и настройка Pygame в среде Windows, macOS и Linux
315
Pygame для Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Pygame для macOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Pygame для Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Приложение В. Создание ваших собственных модулей
326
Создание модуля colorspiral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Дополнительные ресурсы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Приложение Г. Установка Pygame для Python 3 в среде macOS и Linux
332
Pygame для Python 3.4 в среде macOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Pygame для Python 3 в среде Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Глоссарий 343
Об авторе
347
Об иллюстраторе
347
Благодарности 348
Предметный указатель
349
Алексу и Маку,
двум моим любимым программистам
10
Введение
Введение
ЧТО ТАКОЕ ПРОГРАММИРОВАНИЕ
И ПОЧЕМУ ОНО ПОЛЕЗНО ДЛЯ ДЕТЕЙ?
Компьютерное программирование, или написание программного кода,
один из важнейших навыков, которым должен обладать каждый ребенок.
Мы используем программы для решения математических задач, игр, они помогают нам повысить эффективность труда, выполнять однообразные задания, хранить и повторно использовать информацию, создавать что-то новое, а также поддерживать связь с друзьями и всем миром. Понимание принципов программирования делает всю эту мощь компьютеров легкодоступной.
Каждый может научиться программировать: это аналогично решению головоломки или загадки. Все, что нужно, — использовать логику, опробовать решение, еще немного поэкспериментировать — и наконец решить задачу. Время научиться программировать настало уже сейчас! Мы живем в совершенно особый исторический период: никогда раньше миллиарды людей не могли ежедневно общаться друг с другом, как мы можем общаться сегодня с помощью компьютеров. Мы живем в мире, полном новых возможностей: от электромобилей и роботов-сиделок до радиоуправляемых квадрокоптеров, доставляющих посылки и даже пиццу.
Если ваши дети начнут обучаться программированию уже сегодня,
то они смогут оказать помощь в формировании облика этого быстро изменяющегося мира.
Что такое программирование и почему оно полезно для детей?
11
Почему дети должны изучать программирование?
Существует множество веских причин изучать компьютерное программирование, но для меня эти две самые важные.
1. Программирование — это весело.
2. Программирование — это ценный профессиональный навык.
Программирование — это весело
Новые технологии становятся частью нашей повседневной жизни. Каждая компания, благотворительная организация и любое дело могут ощутить на себе преимущества новых технологий. На рынке представлены приложения, помогающие пользователям покупать, передавать, вступать, играть, быть волонтером, общаться и делиться — программы помогают во всем,
что вы только можете себе представить.
Хотели ли ваши дети создать собственный уровень любимой видеоигры? Программисты делают это! А как насчет создания их собственного приложения на телефон? Они могут осуществить этот замысел, написав программный код такого приложения на компьютере! Любая программа, игра, система или приложение, которые им довелось увидеть, были созданы с помощью блоков программного кода, аналогичных тем, что представлены в этой книге. Когда дети программируют, они принимают активное участие в развитии технологий: они не просто развлекаются, они делают технологии увлекательными!
Программирование — это ценный профессиональный навык
Программирование — это важнейший навык XXI века. Сегодня работа как никогда ранее требует способности решать поставленные задачи, новые технологии становятся неотъемлемой частью строительства карьеры во все большем количестве отраслей.
Бюро трудовой статистики США предсказывает, что в следующие пять лет на рынке будет создано более 8 миллионов рабочих мест, так или иначе связанных с новыми технологиями. Согласно справочнику занятости за 2014–
2015 годы, семь из десяти быстро набирающих популярность должностей,
для которых не требуется наличие степени магистра или доктора, приходятся на компьютерную науку и информационные технологии (ИТ).
12
Введение
Марк Цукерберг был лишь студентом колледжа, работавшим в своей комнате в общежитии, когда создал первую версию Facebook в 2004 году.
Спустя всего 10 лет 1,39 миллиарда людей в месяц использовали Facebook
(источник:
  1   2   3   4   5   6   7   8   9   ...   28

перейти в каталог файлов


связь с админом