| Название книги | Python. Великое программирование в Minecraft. - Изд. 2-е |
| Автор | Корягин |
| Год публикации | 2021 |
| Издательство | Феникс |
| Раздел каталога | Познавательная литература для школьников по общественным, естественнонаучным и техническим знаниям (ID = 174) |
| Серия книги | Гений программирования |
| ISBN | 978-5-222-34582-5 |
| EAN13 | 9785222345825 |
| Артикул | 978-5-222-34582-5 |
| Количество страниц | 222 |
| Тип переплета | матовая+лакировка |
| Формат | 70*90/16 |
| Вес, г | 500 |
Посмотрите, пожалуйста, возможно, уже вышло следующее издание этой книги и оно здесь представлено:
Книга «Python. Великое программирование в Minecraft» расскажет вам, как научиться программировать на языке Python, используя игру Minecraft. Изучать языки программирования не всегда тяжело и скучно. Программирование - это магия. Зная, как программировать, вы будете создавать по мановению руки не только отдельные объекты в Minecraft, но и целые миры со своими законами. Если вы давно мечтали построить в Minecraft целый город с транспортом и персонажами, перемещаться за доли секунды по всему миру, разработать настоящую компьютерную игру, научиться проектировать и создавать сложные архитектурные сооружения и программировать, то эта книга для вас. В книге рассмотрены основы языка Python, принцип работы с Minecraft API, основы математической логики, а также основы в области прикладной математики и черчения. Подробно и пошагово показан процесс изучения языка программирования Python на примере создания программ, связанных с Minecraft. Книга предназначена для новичков в области программирования
К сожалению, посмотреть онлайн и прочитать отрывки из этого издания на нашем сайте сейчас невозможно, а также недоступно скачивание и распечка PDF-файл.
ГЕНИЙ ПРОГРАММИРОВАНИЯАНДРЕЙ КОРЯГИН, АЛИСА КОРЯГИНАВЕЛИКОЕ ПРОГРАММИРОВАНИЕВ MINECRAFT2-е изданиеРостов-на-ДонуЕНИ К С2021УДК 087.5:004.41 ББК 32.973.26-018 КТК 746К70Корягин, АндрейК70 Python. Великое программирование в Minecraft / Андрей Корягин, Алиса Корягина. — Изд. 2-е. — Ростов н/Д : Феникс, 2021. — 222, [1] с.: ил. — (Гений программирования).ISBN 978-5-222-34582-5Книга «Python. Великое программирование в Minecraft» расскажет вам, как научиться программировать на языке Python, используя игру Minecraft. Изучать языки программироваПрограммирование - это магия. Зная, как программировать, вы будете создавать по маноMinecraft, но и целые миры со своими законами.Если вы давно мечтали построить в Minecraft целый город с транспортом и персонажами, перемещаться за доли секунды по всему миру, разработать настоящую компьютерную игру, научиться проектировать и создавать сложные архитектурные сооружения и программироВ книге рассмотрены основы языка Python, принцип работы с Minecraft API, основы матеPython на примере создания программ, связанных с Minecraft.Книга предназначена для новичков в области программирования и в первую очередь для детей, которые хотят научиться создавать программы на языке Python в игровой форме.УДК 087.5:004.41ББК 32.973.26-018NOT OFFICIAL MINECRAFT PRODUCT. NOT APPROVED BY OR ASSOCIATED WITH MOJANG.HE ЯВЛЯЕТСЯ ОФИЦИАЛЬНЫМ ПРОДУКТОМ MINECRAFT. HE УТВЕРЖДЕНО И HE СВЯЗАНО C MOJANG.ISBN 978-5-222-34582-5© ©© ©Корягин А. В., Корягина А. В., 2020Оформление: ООО «Феникс», 2020Биккулова А. В., дизайн обложки, 2020В оформлении книги использованы иллюстрации по лицензии Shutterstock.comСодержаниеГЛАВА 11.2.Minecraft 1.12.21.5.ГЛАВА 2Основы Python и Minecraft452.1.2.2.Minecraft — евклидово пространство2.3.2.4.2.5.ГЛАВА 3Архитектурные сооружения3.1.setBlock793.2.3.3.3.3.1.3.3.2.setBlocks993.3.3.3.3.4.3.3.5.3.4.3.5.ГЛАВА 4Транспорт4.1.4.2.4.3.4.4.ГЛАВА 5 Игра в игреГЛАВА 6Селфи6.1.NumPy и OpenCV2056.2.6.3.Minecraft212ПослесловиеЛитератураПредметный указательОб авторахОт авторовДорогой читатель, вы держите в руках книгу, цель которой — поPython. Для того чтобы процесс изучения был понятен даже ребёнку, всю учебную информацию по программированию мы связали с игровой средой Minecraft. Теперь изучение языка Python и отработка алгоритмов разной сложности будут более наглядными и понятными.С древних времён самыми влиятельными в обществе были люди образованные: жрецы, колдуны, шаманы, лекари, которых позНе исключением является и умение создавать программы. С каждым годом ваши программы будут более сложными, более оптимизированными и искусными, если, конечно, тренироваться и применять полученные знания для решения поставленных задач.В книге рассмотрены основы языка Python, принципы работы с Minecraft API, основы математической логики и основы в облаPython на приMinecraft.Вы изучите такие понятия программирования, как ветвлеаппарат в программировании, координаты, списки, введение в объектно-ориентированное программирование, математичеOpenCV.Книга предназначена для новичков в области программироPython в игровой форме. Данная книга является хорошим методическим материалом в интеграции предметных областей в обучении и может быть полезна учителям естественно-научного цикла, в особенности преподавателю инМатериал книги изложен простым, доступным языком. Каждый раздел снабжён практическими заданиями, которые содержат подробную информацию о процессе написания программы и приЖелаем вам интересного и незабываемого приключения в мире программирования.С наилучшими пожеланиями,Андрей и Алиса КорягиныСтруктура книгиКнига разбита на главы по тематике повествования. Каждая глава содержит пункты для детального разбора того или иного алгоритма, который необходим для реализации поставленной заВ ходе разработок алгоритмов и написания программы для реализации их в среде Minecraft вам предстоит решить три глоMinecraft и разработка программы по созданию фотографий с помощью веб-камеры и библиотеки по компьютерному зрению OpenCV и преобразование её в игре Minecraft.Все примеры программ из книги вы можете скачать, пройдя по ссылке: https://github.com/Antipat/python_minecraft.gitДля взаимодействия с игрой вам понадобится локальный серSpigot.В книге присутствуют условные обозначения:И - важный теоретический материал (содержит важную ин99--ГЛАВА 1 Подготовительная работаНа сегодняшний день есть два общеизвестных варианта наPython и Minecraft для интегрированной работы.1. Установить Python З.Х, Minecraft 1.6.4 или Minecraft 1.12.2 и сервер Spigot.2. Использовать микрокомпьютер Raspberry PI и операционную систему Raspbian.Самый простой —это второй способ, если у вас есть микрокомRaspberry PI. Данный способ хорош ещё и тем, что вместе с операционной системой Raspbian идёт игра Minecraft соверhttps:/Этот способ мы не будем рассматривать, потому что микрокомпьютеры Raspberry PI не сильно распространены в России. В другой книге мы обязательно изучим этот микрокомпьютер, но не здесь. Первый способ можно использовать не только для Windows, но и для Mac OS X.Мы будем использовать первый способ и частично обращаться ко второму варианту. Все программы будут работать одинаково на любой из обозначенных версий Minecraft и операционных систем.за исключением работы с периферийными устройствами на приweb-камеры.Мы постарались приблизить книгу к учебнику, чтобы читатель не только познакомился с языком Python в такой форме, но и смог закрепить свои знания и навыки и перенести их на более взросТеперь перед вами открывается удивительный волшебный мир магии программирования. Весь Minecraft у ваших ног. Мы начинаЖелаем удачи!1.1. Установка Python 3Изучение языка программирования Python во многих учебниПошаговая инструкция:1.Перейти на официальный сайт разработчиков языка Python https://www.python.org/. Перед нами появляется такая страница (рис. 1):Communityе* pythonAbout Downloads Documentation Community Success Stories News Events# Python 3: List comprehensions>» fruits = ['Banana', 'Apple', 'Lime']>>> loud_fruits = [fruit.upper() for fruit in>» print(loud_fruits)['BANANA', 'APPLE', 'LIME']Compound Data TypesLists (known as arrays in other languages) are one of the compound data types that Python understands. Lists can be indexed, sliced and manipulated with other built-in functions. More about lists in Python 3# List and the enumerate function>» list(enumerate(fruits))[(0, 'Banana'), (1, 'Apple'), (2, 'Lime')]Python is a programming language that lets you work quickly and integrate systems more effectively. »> Learn MoreРис. 1. Официальный сайт Python2.Выбираем вкладку «Загрузки» (Downloads) и последнюю версию Python З.Х.Для загрузки выберем Python 3.8.3 (рис. 2).PythonPython is a programming language that lets you work quickly and integrate systems more effectively. »> Learn MoreРис. 2. Процесс поиска и загрузки установщика Python3.Ждём загрузки и производим установку программы.Путь установки лучше не менять, если вы в этом не специалист (указатель № 1).Поставить галочку для разрешения установки патДождитесь установки - зелёный индикатор должен заполнить поле слева на-& Python 3.8.3 (32-bit) Setup—> Install NowC:\lkers\Andry\AppData\Locaf\Programs\Python\Python38-32python for windowsInstall Python 3.8.3 (32-bit)Select Install Now to install Python with default settings, or choose Customize to enable or disable features.Creates shortcuts and file associations—> Customize installation Choose location and features0 Install launcher for all users (recommended)□ Add Python 3.8 to PATHCancelправо.Рис. 3. Процесс установки редактора Python4.В меню «Пуск» вы можете увиНас в первую очередь будет интеIDLE (Python З.Х). Нажав левой кнопкой мыши на ярлык IDLE, мы запустим редактор кода.Теперь у нас есть редактор кода и можно создавать программы.Рис. 4. Месторасположение файлов Python. Пример для Windows 10Возможные проблемы:Программа Python З.Х не устанавливается на компьютер:■■В этом случае необходимо открыть вкладку «Загрузки» и выWindows) (рис. 5).1.3.Сервер SpigotДля интеграции Python с Minecraft вам необходим сервер Spigot. Информация о Spigot: https://minecraft-ru.gamepedia.com/Spigot Ссылка на скачивание сервера: https://clck.ru/QhRRLСкачанный архив распакуйте в папку Документы -Minecraft Python, как изображено на рис. 8.i 0 L “ ! Minecraft Python| Главная Поделиться*Л Переместить в - X Удалить *Закрепить на панели Копировать Вставить J) Копировать в ’ sj Переименовать быстрого доступаЩБуфер обмена4V' О’Новая папкаСоздатьСвойстваОткрытьЩ Выделить все□° Снять выделение□° Обратить выделениеВыделить* f !□> Этот компьютер > Документы > Minecraft Python >ИмяБыстрый доступ_Minecraft ToolsИ Рабочий столSetting UpЗагрузкиВ ДокументыО Поиск: Minecraft PythonДата изменения03.022019 9:1223.012019 21:40Рис. 8. Содержимое архива Minecraft Python1.4.Minecraft APIДля визуального отображения программного кода, написанного на Python, мы будем использовать среду Minecraft. Для того чтобы наша программа взаимодействовала с игрой Minecraft, необходиMinecraft API.Minecraft Python API LibraryMinecraft API -это библиотека для работы с игрой с помощью языков программирования.Далее будет представлена подробная информация об инструAPI. Не пугайтесь, информация даётся для полноты картины, но это не значит, что мы будем применять весь инструменMinecraft API.Структура API:■minecraft.py♦Minecraft—основной класс для подключения и вза♦Camera — изменение угла обзора камеры и поло♦Player— получение и изменение положения и на♦Entity-получение и изменение позиции и установ♦Events -получение событий, которые произошли в игре.■ Ыоск.ру♦ Класс Block- определение блока, в частности его типа.■ event.ру♦ Класс BlockEvent—определение события блока, в частно■vec3.py♦Vec3-универсальный класс для управления 3-мер- ным вектором (т. е. х, у, z).■connection.ру — внутренний модуль, используемый API.■util.py - внутренний модуль, используемый API.Рассмотрим подробнее информацию по структурным единиMinecraft API.Классы Minecraft API.MinecraftОсновной класс для взаимодействия с миром Minecraft■create (address = "localhost", port = 4711)Создаёт соединение c Minecraft (адрес, порт) => Minecraft object#адрес и порт по умолчаниюme = minecraft.Minecraft.create О#подключение по IP-адресу и портуme = minecraft.Minecraft.create («192.168.1.1», 4711)■getBlock (х, у, z)Получение значение блока по координатам (х, у, z) => id: int- числовое значение#возвращает тип блока для блока в О, О, ОblockType = mc.getBlock (0,0,0).getBlocks (хО, уО, zO, х1, у1, z1)Получение массива обозначений куба из блоков (хО, уО, zO, х1, у1, z1) => [id: int]#получение идентификаторовblocks = mc.getBlocks(-1, -1, -1,1,1,1)for block in blocks:print block.getBlockWithData (x, y, z)Получить блок с данными (х, у, z) => Block#извлекает объект блока для блока в О, О, ОblockObj = mc.getBlockWithData (0,0,0).setBlock (х, у, z)Установить блок (х, у, z, id, [data])#устанавливает блок с координатами х, у, z для определенного типаmc.setBlock (0,0,0, block.DIRT.id)#устанавливает блок для определенного типа и «подтипа»mc.setblock (0,0,0, 6noK.W00D.id, 1).setBlocks (хО, уО, zO, х1, yl, z1, ЫоскТуре, blockData)Установить кубоид блоков (хО, уО, zO, х1, yl, z1, id, [data])#устанавливает много блоков одновременно, заполняя промеzmc.setBlocks (-1, -1, -1,1,1,1, block.STONE.id).getHeight (x, z)Получить высоту мира (x, z) => int#определить у (вертикальную) координаты х, z, которая преду = mc.getHeight (0,0).getPlayerEntitylds ()Получить идентификаторы сущностей подключенных игроков => [id: int]#получить идентификаторы сущностей игроков, подключенentity Ids = mc.getPlayerEntityldsOfor entityld in entitylds:print entityldОдним из интересных элементов данной функции является неMinecraft. Для того чтобы блок правильно появился в игре, необходимо знать его id-название и номер блока в Minecraft API..id«Идентификатор (или тип) блока»Популярное изданиеЕНЕКорягин Андрей Владимирович Корягина Алиса ВитальевнаPYTHONВЕЛИКОЕ ПРОГРАММИРОВАНИЕ В MINECRAFTОтветственный редактор Выпускающий редактор Технический редакторМ. ЖелезняковаГ. ЛогвиноваТ. ТкачукФормат 70х90'/16. Бумага офсетная. Тираж 3000 экз. Заказ №Издатель и изготовитель: ООО «Феникс».Юр. и факт, адрес: 344011, Россия, Ростовская обл., г. Ростов-на-Дону, ул. Варфоломеева, д. 150 Тел/факс: (863) 261-89-65, 261-89-50Изготовлено в России. Дата изготовления: 02.2021. Срок годности не ограничен.Отпечатано в АО «ТАТМЕДИА»Филиал «Полиграфическо-издательский комплекс "Идел-Пресс"».Юр. адрес: 420097, Россия, Республика Татарстан, г. Казань, ул. Академическая, д. 2Факт, адрес: 420066, Россия, Республика Татарстан, г. Казань, ул. Декабристов, здание 2