Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Язык программирования Python
Почему Python ?
Рейтинги языков программирования - 2019
1) Языки программирования и изменение их рейтинга в
2019 году.
1
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
2) Наиболее востребованные языки программирования в
2019 году.
2
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
3)
3
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
4) Языки программирования, которые разработчики хотят
изучать в 2019 году.
4
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Язык программирования Python 3 — высокоуровневый язык программирования
общего
назначения,
ориентированный
на
повышение
производительности
разработчика и читаемости кода. С его помощью можно решать задачи различных
типов.
Язык программирования Python – это сочетание простоты и мощности.
Преимущества и недостатки языка Python :
1. Python - интерпретируемый язык программирования. Преимущество:
это
позволяет значительно упростить отладку программ; Недостаток – это
обуславливает сравнительно низкую скорость выполнения.
2. Python
- это бесплатная программа, программируя на Python не требуется
делать никаких лицензионных отчислений правообладателям.
3. Динамическая типизация. В Python не надо заранее объявлять тип переменной,
что очень удобно при разработке (это называется Динамическая типизация).
4. Типы связываются с объектами, а не с переменными. Переменной можно
присвоить значение любого типа, а список может содержать объекты многих
типов.
5. Хорошая поддержка модульности. Можно легко написать свой модуль и
использовать его в других программах.
6. Встроенная поддержка Unicode в строках. В Python необязательно писать всё на
английском языке, в программах вполне может использоваться ваш родной
язык.
7. Поддержка объектно-ориентированного
программирования.
реализация в Python является одной из самых понятных.
8. Автоматическая сборка мусора, отсутствие утечек памяти.
5
При
этом
его
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
9. Возможность тесной интеграции с C/C++, в том случае, если возможностей
Python недостаточно.
10.Понятный и лаконичный синтаксис, способствующий ясному отображению
кода. Удобочитаемость кода (80% времени программист читает чужой код, и
лишь 20% времени пишет свой). Удобная система функций позволяет при
грамотном подходе создавать код, в котором будет легко разобраться другому
человеку в случае необходимости.
11.Огромное количество модулей, как входящих в стандартную поставку Python 3,
так и сторонних. В некоторых случаях для написания программы достаточно
лишь найти подходящие модули и правильно их скомбинировать. Таким
образом, можно разрабатывать программы на более высоком уровне, работая с
уже готовыми элементами, выполняющими различные действия.
12.Кроссплатформенность.
Программа,
написанная
на
Python,
будет
функционировать совершенно одинаково вне зависимости от того, в какой
операционной системе она запущена (Windows, Linux, MacOS).
Python
хорошо
подходит
для
быстрой
разработки приложений (т.н. прототипирование).
Программирование приложения на Python нередко
занимает в пять раз меньше времени, чем для его
реализации на С или Java, а приложение занимает
впятеро
меньше
строк,
чем
эквивалентная
программа на C.
Недостатки Python (их немного):
1) Pyhon – интерпретируемый язык, поэтому скорость выполнения кода у
него ниже, чем у компилируемых языков (таких как C, C++, C# и др.).
2) Python не является лидером по количеству библиотек.
6
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
3) Не проверяет тип переменных во время компиляции.
4) Python плохо подходит для работы с мобильными устройствами (на
сегодняшний день).
5) Python слаб в поддержке многопроцессорных устройств и для
параллельного программирования.
В основе философии Python лежит постулат под названием «Дзен Пайтона».
Его можно прочитать (на английском языке), выполнив команду:
>>>import this
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious
way to do it.
7
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Although that way may not be obvious at first unless
you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good
idea.
Namespaces are one honking great idea -- let's do more of
those!
Дзен Пайтона от Тима Петерса :
Красивое лучше, чем уродливое.
Явное лучше, чем неявное.
Простое лучше, чем сложное.
Сложное лучше, чем запутанное.
Плоское лучше, чем вложенное.
Разреженное лучше, чем плотное.
Читаемость имеет значение.
Особые случаи не настолько особые, чтобы нарушать правила.
При этом практичность важнее безупречности.
Ошибки никогда не должны замалчиваться.
Если не замалчиваются явно.
Встретив двусмысленность, отбрось искушение угадать.
Должен существовать один — и, желательно, только один — очевидный
способ сделать это.
Хотя он поначалу может быть и не очевиден, если вы не голландец.
Сейчас лучше, чем никогда.
Хотя никогда зачастую лучше, чем прямо сейчас.
Если реализацию сложно объяснить — идея плоха.
8
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Если реализацию легко объяснить — идея, возможно, хороша.
Пространства имён — отличная вещь! Давайте будем делать их больше!
Что умеет делать Python ?
1. Работа с xml/html файлами;
2. Работа с электронными таблицами (xls, xlsx, ods и др.);
3. Работа с http запросами;
4. Создание десктопных приложений с GUI (графический интерфейс)
(библиотеки Tkinter, PyQt);
5. Создание веб-сценариев;
6. Работа с FTP (файловые хранилища);
7. Работа с изображениями, аудио и видео файлами;
8. Робототехника;
9. Программирование математических и научных вычислений;
10.Работа с Большими Данными (Big Data).
Установка Python на Windows
Скачивать Python лучше всего с официального сайта www.python.org.
В текущий момент последняя версия Python – 3.7.4.
Установить Python можно в папку текущего пользователя, даже не имея прав
администратора.
Сделаем это.
Рекомендации.
9
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
1) Предварительно создать каталог для Python, лучше всего в папке Документы
(Documents). Дать имя этому каталогу по номеру версии, в нашем случае Python374.
2) После запуска установщика лучше поменять галочки .
Было изначально:
Стало:
10
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Первая (верхняя) галочка позволяет указать установку только для текущего
пользователя (в этом случае НЕ потребуется пароль администратора), либо для всех
пользователей (в этом случае потребуется пароль администратора).
Вторая галочка добавляет путь к папке с Python в переменную окружения. Что
это даёт? В этом случае Python будет запускаться из командной строки просто по
имени программы без указания пути к ней.
Далее выбрать Customize Installation
11
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
На следующем экране кликаем Next
12
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
На следующем экране кликаем Browse (Просмотр) и выбираем путь к созданной
на шаге 1 папке.
После чего кликаем на кнопку Install.
Режимы запуска Python
1. исходный базовый режим (командная строка);
2. Интегрированная среда выполнения IDLE (Python IDE);
3. Работа в профессиональной IDE (наилучшей считается JetBrains
PyCharm).
IDLE – это интегрированная среда разработки (IDE) на языке Python,
поставляемая вместе с дистрибутивом.
После установки Python запускаем IDLE.
13
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Теперь можно выполнить ритуал – написать программу HelloWorld.
На Python эта программа выглядит так:
Пример 1.
>>>print(“Hello World !”)
Ещё один пример
Пример 2.
Выполним в IDLE следующую программу:
>>> x=3
>>> y=3
>>> print(x**y)
Получим
27
Ещё один пример.
Пример 3.
name = input("Как Вас зовут? ")
print("Привет,", name)
Система помощи в IDLE
В любой момент работы с IDLE можно перейти в режим помощи м помощью
стандартной функции help()
>>>help()
После чего произойдёт в режим помощи
help>
Здесь мы можем запросить справку по любому ключевому слову языка,
например
14
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
Двойной клик по tips приведёт к раскрытию справки
Выход из режима справки можно выполнить командой Ctrl+C.
Функуция dir()
Другая полезная функция — dir() — выводит список объектов в конкретном
пространстве имён. Без параметров она выводит текущие глобальные переменные, но
также может использоваться для вывода компонентов модуля и даже типа:
Интерактивный режим не является основным, так как он позволяет выполнять
только очень простые программы.
Основным является пакетный режим, в котором мы будем сохранять
программный код в файл и запускать уже сохранённый файл на выполнение.
Для того, чтобы создать новое окно, в интерактивном режиме IDLE нужно
выбрать File → New File (или нажать Ctrl + N).
Введём код последнего примера и сохраним его в рабочую папку (primer1.py).
Теперь нажмём F5 (или выберем в меню IDLE Run → Run Module).
Синтаксис Python
1. Конец строки является концом инструкции (точка с запятой не требуется,
хотя написание его в конце оператора ошибкой не является).
15
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
2. Вложенные инструкции объединяются в блоки по величине отступов.
Отступ в Python – это 4 пробела.
3. Вложенные инструкции в Python записываются в соответствии с одним и
тем же шаблоном, когда основная инструкция завершается двоеточием,
вслед за которым располагается вложенный блок кода, обычно с отступом
под строкой основной инструкции.
Основная инструкция:
Вложенный блок инструкций
Именно данный подход позволяет создавать удобочитаемый программный код
(80% времени программист читает чужой код, а 20% времени – пишет свой !).
При программировании удобнее всего использовать IDE с подсветкой
синтаксиса, это позволяет минимизировать время на исправление синтаксических
ошибок. Функцией подсветки синтаксиса обладают все профессиональные IDE, а
также многие редакторы кода, например такой популярный, как Notepad++.
Комментарии
Комментарии в Python – это то, что идёт после символа #.
В Python есть только однострочные комментарии и нет многострочных.
Литеральные константы
Примером литеральной константы может быть число, например, 34, 1.23, 9.25e-3
или что-нибудь вроде
'Это строка символов' или
"It's a string!".
16
Объектно-ориентированный анализ
и программирование. Лекция 2019 – 1 .
(Обрамляющие кавычки могут быть как одинарные, так и двойные)
Числа
В Python применяются числа 3-х типов: 1)целые, 2) с плавающей точкой и 3)
комплексные.
В Python не существует типа ‘long int’ (длинное целое). Целые числа по
умолчанию могут быть произвольной длины (что очень необычно для языков
программирования).
1) целые числа: 1, –3, 42, 355, 888888888888888, –7777777777 (размер целых
чисел ограничивается только объёмом доступной памяти);
2) числа с плавающей точкой: 3,0, 31e12, –6e-4;
3) комплексные числа: 3 + 2j, –4- 2j, 4,2 + 6,3j.
Логические значения
Логические значения: True, False.
Строки
Строка – это последовательность символов. Чаще всего строки – это просто
некоторые наборы слов.
Слова могут быть как на любом языке, так как используется кодировка Unicode.
Для сцепления (конкатенации) строк используется символ +.
17