1   2   3   4
Ім'я файлу: python_structured_programming.pdf
Розширення: pdf
Розмір: 954кб.
Дата: 09.03.2020
скачати
Пов'язані файли:
4 курс Стабільна Стенокардія, Біленко.docx
metodichka_po_ot.docx
гынекол тесты.docx

Учебник ”Основы программирования на Python”
Основы
программирования
на
Python
Вводный курс
Версия 2
С. Шапошникова
(plustilino)
Лаборатория юного линуксоида http://younglinux.info
, 2011 1

Учебник ”Основы программирования на Python”
Пояснительная записка
Курс по информатике "Основы программирования на Python" представляет собой вводный курс по программированию, дающий представление о базовых понятиях структурного программирования (данных, операциях, переменных, ветвлениях в программе, циклах и функциях).
Выбор Python обусловлен тем, что это язык, обладающий рядом преимуществ перед другими языками для начинающих изучать программирование: ясность кода, быстрота реализации.
Курс рассчитан примерно на 15 часов.
Данный курс не является пособием по языку программирования Python.
Цели и задачи курса
Основной целью курса "Основы программирования на Python" является формирование базовых понятий структурного программирования, развитие логики обучающихся.
Программа курса
Поверхностное представление о языках программирования и их историческом развитии, способах трансляции программного кода. Типы данных (целые числа, числа с плавающей точкой, строки) и структуры данных (строки, списки, словари), переменные, выражения, ветвления (if, if-else, if-elif-else) и циклы (while, for). Ввод и вывод данных. Понятие о функции, локальных и глобальных переменных.
Авторские права
Материалы, составляющие данное пособие, распространяются на условии лицензии
GNU FDL. Учебник не содержит неизменяемых разделов. Автор пособия указан на первой странице обложки. Встречающиеся в книге названия могут являться торговыми марками соответствующих владельцев.
Курс "Основы программирования на Python" первоначально публиковался на сайте http://younglinux.info с 2009 года.
2

Учебник ”Основы программирования на Python”
Содержание
Урок 1.
История языков программирования. Компиляция и интерпретация
4
Урок 2.
Знакомство с
Python и средами программирования
7
Урок 3.
Типы данных в программировании. Определение переменной
11
Урок 4.
Логические выражения
15
Урок 5.
Условный оператор. Инструкция if
18
Урок 6.
Множественное ветвление
21
Урок 7.
Цикл while
24
Урок 8.
Ввод данных с клавиатуры
27
Урок 9.
С
троки как последовательности символов
29
Урок 10.
Списки — изменяемые последовательности
31
Урок 11.
Введение в словари
34
Урок 12.
Цикл for в языке программирования
Python
36
Урок 13.
Функции в программировании
39
Урок 14.
Параметры и аргументы функций. Локальные и глобальные переменные
41
Урок 15.
Проверочная работа по основам программирования на
Python
43 3

Учебник ”Основы программирования на Python”
Урок 1.
История языков программирования.
Компиляция и интерпретация
Программа. Язык программирования
Программу можно представить как набор последовательных команд (алгоритм) для объекта (исполнителя), который должен их выполнить для достижения определенной цели. Так условно можно запрограммировать и человека, если составить ему инструкцию "как приготовить оладьи", а он начнет четко ее исполнять. При этом инструкция (программа) для человека будет написана на так называемом естественном языке (русском, английском или др.).
Обычно принято программировать не людей, а вычислительные машины, используя при этом специальные языки. Использование особых языков вызвано тем, что машины не в состоянии понимать наши (человеческие) языки. Для "инструктирования" машин предназначены разнообразные языки программирования, которые характеризуются синтаксической однозначностью (например, в них нельзя менять местами определенные слова) и ограниченностью (строго определенный набор слов и символов).
Основные этапы развития языков программирования
Первые программы писались на машинном языке, т.к. для ЭВМ того времени еще не существовало развитого программного обеспечения, а машинный язык — это единственный способ взаимодействия с аппаратным обеспечением компьютера.
Каждую команду машинного языка напрямую выполняет то или иное электронное устройство. Данные и команды программисты записывали в цифровом виде
(например, в шестнадцатеричной или двоичной системах счисления). Понять программу на таком языке очень сложно; кроме того, даже небольшая программа получалась состоящей из множества строк кода. Ситуация осложнялась еще и тем, что каждая вычислительная машина понимает лишь свой машинный язык.
Людям, в отличие от машин, более понятны слова, чем наборы цифр. Стремление человека оперировать словами и не цифрами привело к появлению ассемблеров. Это языки, в которых вместо численного обозначения команд и областей памяти используются словесно-буквенные.
При этом появляется проблема: машина не в состоянии понять наборы букв.
Необходим какой-нибудь переводчик на ее родной машинный язык. Поэтому, начиная со времен ассемблеров, под каждый язык программирования создаются трансляторы
— специальные программы, преобразующие программный код с языка программирования в машинный код. Ассемблеры на сегодняшний день продолжают использоваться (в системном программировании — низкоуровневые интерфейсы операционных систем, части драйверов и др.).
4

Учебник ”Основы программирования на Python”
После ассемблеров наступил рассвет языков так называемого высокого уровня. Для этих языков потребовалось разрабатывать более сложные трансляторы, т.к. языки высокого уровня куда больше удобны для человека, чем для вычислительной машины.
В отличие от ассемблеров, которые остаются привязанными к своим типам машин, языки высоко уровня обладают переносимостью. Т.е., написав один раз программу, программист мог выполнить ее на любой машине.
Следующим значимым шагом было появление объектно-ориентированных языков программирования. С помощью таких языков программист как бы оперирует виртуальными объектами. На сегодняшний день, реализация больших и сложных проектов осуществляется в основном с помощью объектно-ориентированного программирования.
Разнообразия языков программирования
На сегодняшний день существует огромное множество различающихся и похожих между собой языков программирования. Причина такого явления становится понятна, если представить то количество и разнообразие задач, которые на сегодняшний день решается с помощью вычислительной техники. Для решения разных задач требуются разные инструменты (т.е. языки программирования).
Многие программисты старались в прошлом и стараются сейчас придумать свой язык программирования, обладающий теми или иными преимуществами. Хотя подавляющее большинство программистов в настоящее время тратят огромное количество времени на изучение уже существующего арсенала инструментов.
Все существующее многообразие языков можно условно классифицировать по разным критериям. Например, по типу решаемых задач (языки системного или прикладного назначения, языки для web-разработки и др.).
Трансляция
Ранее было сказано, что для перевода кода с одного языка программирования
(например, языка высокого уровня) на другой (например, машинный язык) требуется специальная программа — транслятор.
Механизм этого перевода весьма сложен, при этом выделяют два основных способа трансляции — компиляция программы или ее интерпретация.
При компиляции весь исходный программный код (тот, который пишет программист) сразу переводится в машинный. Создается так называемый отдельный исполняемый
файл, который никак не связан с исходным кодом. Выполнение исполняемого файла обеспечивается операционной системой.
При интерпретации выполнение кода происходит последовательно (можно сказать, строка за строкой). Операционная система взаимодействует с интерпретатором, а не исходным кодом.
5

Учебник ”Основы программирования на Python”
Выполнение откомпилированной программы происходит быстрее, т.к. она представляет собой готовый машинный код. Однако на современных компьютерах снижение скорости выполнения при интерпретации обычно не заметно.
6

Учебник ”Основы программирования на Python”
Урок 2.
Знакомство с Python
и средами программирования
История
Язык программирования Python был создан примерно в 1991 году голландцем Гвидо ван Россумом.
Свое имя - Пайтон (или Питон) - получил от названия телесериала, а не пресмыкающегося.
После того, как Россум разработал язык, он выложил его в Интернет, где уже целое сообщество программистов присоединилось к его улучшению.
Python активно совершенствуется и в настоящее время. Часто выходят его новые версии. Официальный сайт http://python.org.
Особенности
Python – это интерпретируемый язык программирования: исходный код частями преобразуется в машинный в процессе выполнения специальной программой — интерпретатором.
Python характеризуется ясным синтаксисом. Читать код на этом языке программирования достаточно легко, т.к. в нем мало вспомогательных элементов, а правила языка заставляют программистов делать отступы. Понятно, что хорошо оформленный текст с малым количеством отвлекающих элементов читать и понимать легче.
Python – это полноценный, можно сказать универсальный, язык программирования.
Он поддерживает объектно-ориентированное программирование (на самом деле он и разрабатывался как объектно-ориентированный язык).
Также Python распространяется свободно на основании лицензии подобной GNU
General Public License.
Дзэн Питона
Если интерпретатору Питона дать команду import this
(импортировать "сам объект"), то выведется так называемый "Дзен Питона", иллюстрирующий идеологию и особенности данного языка. Глубокое понимание этого дзена приходит тем, кто сможет освоить язык Python в полной мере и приобретет опыт практического программирования.

Фраза
Перевод
1.
Beautiful is better than ugly.
Красивое лучше уродливого.
7

Учебник ”Основы программирования на Python”
2.
Explicit is better than implicit.
Явное лучше неявного.
3.
Simple is better than complex.
Простое лучше сложного.
4.
Complex is better than complicated.
Сложное лучше усложнённого.
5.
Flat is better than nested.
Плоское лучше вложенного.
6.
Sparse is better than dense.
Разрежённое лучше плотного.
7.
Readability counts.
Удобочитаемость важна.
8.
Special cases aren't special enough to break the rules.
Частные случаи не настолько существенны, чтобы нарушать правила.
9.
Although practicality beats purity.
Однако практичность важнее чистоты.
10. Errors should never pass silently.
Ошибки никогда не должны замалчиваться.
11. Unless explicitly silenced.
За исключением замалчивания, которое задано явно.
12. In the face of ambiguity, refuse the temptation to guess.
В случае неоднозначности сопротивляйтесь искушению угадать.
13. There should be one — and preferably only one — obvious way to do it.
Должен существовать один — и, желательно, только один — очевидный способ сделать это.
14. Although that way may not be obvious at first unless you're Dutch.
Хотя он может быть с первого взгляда не очевиден, если ты не голландец.
15. Now is better than never.
Сейчас лучше, чем никогда.
16. Although never is often better than
*right* now.
Однако, никогда чаще лучше, чем прямо сейчас.
17. If the implementation is hard to explain, it's a bad idea.
Если реализацию сложно объяснить — это плохая идея.
18. If the implementation is easy to explain, it may be a good idea.
Если реализацию легко объяснить — это может быть хорошая идея.
19. Namespaces are one honking great idea
— let's do more of those!
Пространства имён — прекрасная идея, давайте делать их больше!
Как писать программы
Интерактивный режим
В основном интерпретатор выполняет команды построчно: пишешь строку, нажимаешь Enter, интерпретатор выполняет ее, наблюдаешь результат.
Это очень удобно, когда человек только изучает программирование или тестирует какую-нибудь небольшую часть кода. Ведь если работать на компилируемом языке, то пришлось бы сначала написать код на исходном языке программирования, затем скомпилировать и уж потом запустить исполняемый файл на выполнение.
8

Учебник ”Основы программирования на Python”
Работать в интерактивном режиме в ОС Linux можно в консоли. Для этого следует выполнить команду python
. Запустится интерпретатор, где сначала выведется информация об интерпретаторе. Далее, последует приглашение к вводу (>>>).
Запустите интерпретатор Питона.
Поскольку никаких команд мы пока не знаем, то будем использовать Питон как калькулятор (возможности языка это позволяют).
2 + 5 3 * (5 - 8)
2.4 + 3.0 / 2
и т.д.
Наберите подобные примеры в интерактивном режиме (в конце каждого нажимайте
Enter).
Ответ выдается сразу после нажатия Enter (завершения ввода команды).
Бывает, что в процессе ввода была допущена ошибка или требуется повторить ранее используемую команду. Чтобы не писать строку сначала, в консоли можно прокручивать список команд, используя для этого стрелки на клавиатуре.
Другой вариант работы в интерактивном режиме — это работа в среде разработки
IDLE, у которой есть интерактивный режим работы. В отличие от консольного варианта здесь можно наблюдать подсветку синтаксиса (в зависимости от значения синтаксической единицы она выделяется определенным цветом). Прокручивать список ранее введенных команд можно с помощью комбинаций Alt+N, Alt+P.
Запустите IDLE. Попробуйте решать математические примеры здесь.
Создание скриптов
Несмотря на удобства интерактивного режима работы при написании программ на
Питоне, обычно требуется сохранять исходный программный код для последующего использования. В таком случае подготавливаются файлы, которые передаются затем интерпретатору на исполнение. По отношению к интерпретируемым языкам программирования часто исходный код называют скриптом. Файлы с кодом на Python обычно имеют расширение py.
Подготовить скрипты можно в той же среде IDLE. Для этого, после запуска программы в меню следует выбрать команду File → New Window (Crtl + N), откроется новое окно. Затем желательно сразу сохранить файл (не забываем про расширение py). После того как код будет подготовлен, снова сохраните файл (чтобы обновить сохранение). Ну и наконец, можно запустить скрипт, выполнив команду меню Run → Run Module (F5). После этого в первом окне появится результат выполнения кода. (Примечание: если набирать код, не сохранив файл в начале, то подсветка синтаксиса будет отсутствовать.)
Подготовьте скрипт (с примерами). Запустите его на выполнение.
9

Учебник ”Основы программирования на Python”
На самом деле скрипты можно готовить в любом текстовом редакторе (желательно, чтобы он поддерживал подсветку синтаксиса языка Python). Кроме того, существуют специальные программы для разработки.
Запускать подготовленные файлы можно не только в IDLE, но и в консоли с помощью команды python адрес/имя_файла
В консоли передайте интерпретатору Питона на выполнение подготовленный файл.
Кроме того, существует возможность настроить выполнение скриптов с помощью двойного клика по файлу (в Windows данная возможность присутствует изначально).
10

Учебник ”Основы программирования на Python”
Урок 3.
Типы данных в программировании.
Определение переменной
Данные и их типы
Можно заметить, что все, что мы делаем, мы делаем над чем-то — какими-то предметами или объектами. Мы меняем свойства объектов и их возможности.
Программы для компьютеров также манипулируют какими-то объектами (назовем их пока данными).
Очевидно, данные бывают разными. Очень часто компьютерной программе приходится работать с числами и строками. Например, на прошлом уроке мы "манипулировали" числами, выполняя над ними арифметические операции. Можно сказать, что операция сложения выполняла изменение первого числа на величину второго, или умножение увеличивало одно число в количество раз, соответствующее второму.
Числа в свою очередь также бывают разными: целыми, дробными, могут иметь огромное значение или очень длинную дробную часть. При знакомстве с языком программирования Python мы точно столкнемся с тремя типами данных:

целые числа (integer) – положительные и отрицательные целые числа, а также 0
(например, 4, 687, -45, 0).

числа с плавающей точкой (float point) – дробные числа (например, 1.45,
-3.789654, 0.00453). Примечание: разделителем целой и дробной части служит точка, а не запятая.

строки (string) — набор символов, заключенных в кавычки (например, "ball",
"What is your name?", 'dkfjUUv', '6589'). Примечание: кавычки в Python могут быть одинарными или двойными.
Операции
Можно сказать, что операция — это выполнение каких-нибудь действий над данными
(операндами). Для выполнения конкретных действий требуются специальные инструменты — операторы.
Например, символ "+" по отношению к числам выполняет операцию сложения, а по
11

Учебник ”Основы программирования на Python”
отношению к строкам — конкатенацию (соединение). Парный знак ** возводит первое число в степень второго.
Выражение
Результат выполнения
34.907 + 320.65 355.55699999999996
"Hi, " + "world :)"
'Hi, world :)'
"Hi, " * 10
'Hi, Hi, Hi, Hi, Hi, Hi, Hi, Hi, Hi, Hi, '
Изменение типа данных
Что будет, если мы попытаемся выполнить в одном выражении операцию над разными типами данным? Например, сложить целое и дробное число, число и строку.
Однозначный ответ дать нельзя: так, при складывании целого числа и числа с плавающей точкой, получается число с плавающей точкой, а если попытаться сложить любое число и строку, то интерпретатор Python выдаст ошибку.

  1   2   3   4

скачати

© Усі права захищені
написати до нас