Язык программирования Python

Содержание

Слайд 2

Python (в русском языке распространено название пито́н) — высокоуровневый язык программирования

Python (в русском языке распространено название пито́н) — высокоуровневый язык программирования

общего назначения, ориентированный на повышение производительности разработчика и читаемости кода.

Официальный сайт - https://www.python.org/Официальный сайт - https://www.python.org/ Официальный сайт - https://www.python.org/ Справочник(Документация) - https://docs.python.org/3/

Слайд 3

Python поддерживает несколько парадигм программирования: структурное; объектно-ориентированное(ООП); функциональное; императивное; аспектно-ориентированное.

Python поддерживает несколько парадигм программирования:
структурное;
объектно-ориентированное(ООП);
функциональное;
императивное;
аспектно-ориентированное.

Слайд 4

Основные архитектурные черты: динамическая сильная неявная типизация; автоматическое управление памятью; полная

Основные архитектурные черты:
динамическая сильная неявная типизация;
автоматическое управление памятью;
полная интроспекция;
механизм

обработки исключений;
поддержка многопоточных вычислений;
и удобные высокоуровневые структуры данных.
Слайд 5

Guido van Rossum В 1991 г. – состоялся первый релиз языка

Guido van Rossum

В 1991 г. – состоялся первый релиз языка

Python
С 2005 – 2012 гг. – работал в Google.
C 2013 – инженер (Python BDFL) в Dropbox.
В настоящее время живёт в Сан-Франциско, в Калифорнии.

Гвидо ван Россум родился 31 января 1956 г. в Нидерландах, где вырос и закончил Амстердамский университет по специальности «математика и информатика» в 1982 году. Работал в исследовательских институтах и лабораториях Европы и США.

Слайд 6

Guido van Rossum – Creator of the Python programming language

Guido van Rossum – Creator of the Python programming language

Слайд 7

Меня зовут Гвидо ван Россум. Я создал язык программирования «Питон». Я

Меня зовут Гвидо ван Россум. Я создал язык программирования «Питон». Я

работал над Питоном в течение 25 лет, и я работал, конечно же, с большой группой других людей. Я очень рад видеть вас всех в этом классе. И я очень горд, что вы используете мой язык для обучения. «Питон» - это всего лишь первый шаг, который вы делаете на своём пути к программированию. Есть много интересных вещей, которые вы узнаете в программировании. Многое вы узнаете, используя «Питон», многое вы узнаете, используя другие языки. И вы такие не одни. Миллионы людей изучали «Питон» до вас и миллионы изучают его одновременно с вами. И вы можете помогать друг другу и учиться вместе.
Слайд 8

Фото из Твиттера Гвидо ван Россума

Фото из Твиттера
Гвидо ван Россума

Слайд 9

PYTHON и ПИТОН Назван язык не в честь змеи, а в

PYTHON и ПИТОН

Назван язык не в честь змеи, а в

честь английской комик-группы «Монти Пайтон», снявшейся в телешоу «Летающий цирк Монти Пайтона» в 1969-1974 годах в жанре абсурдистского юмора. (Пример: https://www.youtube.com/watch?v=g9LEvEFGzIw
Влияние, оказанное коллективом на жанр комедии, сравнивают с влиянием, оказанным группой The Beatles на поп и рок-музыку.
Слайд 10

Реализации языка PYTHON CPython – это и есть сам PYTHON, т.к.

Реализации языка PYTHON

CPython – это и есть сам PYTHON, т.к. он

написан на языке C.
Jython – это реализация языка Python на языке Java.
IronPython – реализация языка Python, предназначенная для платформы Microsoft .NET или Mono. Написан на C#.
ChinesePython – язык, использующий лексику китайского языка. зарезирвированные слова, имена переменных, и большинство операторов также на китайском.
PyPy – в начале своего существования был интерпретатором Python, написанным на Python. Текущие версии PyPy транслируются из RPython в Си и компилируются. Ему пророчат будущее.
и многие другие
Слайд 11

Версии Python PYTHON v. 2.0 16.10.2000 PYTHON v. 3.0 03.12.2008 …

Версии Python

PYTHON v. 2.0
16.10.2000

PYTHON v. 3.0
03.12.2008


2.6
2008

2.7
2010


3.4
2014

3.5
2015

3.8 ..20??

PYTHON v. 1.0
1994


1.6
2000

END

3.6
2016

3.7
2018

Слайд 12

Применение Python ИНДУСТРИЯ Google Apple IBM Facebook NASA Яндекс и Mail.Ru

Применение Python

ИНДУСТРИЯ

Google
Apple
IBM
Facebook
NASA
Яндекс и Mail.Ru
Dropbox
Instagram
и многие другие.

ОБРАЗОВАНИЕ

Наибольшее распространение получил в США
Это

первый язык программирования в MIT – флагмане обучения computer scienic в мире
В США рекомендован как первый язык программирования для школ и университетов
Изучается в школах и ВУЗАХ России
Слайд 13

С 2015 года задания на Python входят в ЕГЭ(8 заданий): часть

С 2015 года задания на Python входят в ЕГЭ(8 заданий): часть 1

– 5 заданий, часть 2 – 3 задания
Слайд 14

Слайд 15

РЕЙТИНГИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ Ежемесячно рассчитывается на основе количества ссылок, найденных по

РЕЙТИНГИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Ежемесячно рассчитывается на основе количества ссылок, найденных по запросам

вида: +" programming" в поисковых системах и Google, YouTube, Baidu, Yahoo!, Amazon, Wikipedia, Bing и другие. Более высокая позиция языка в рейтинге свидетельствует, что о нём найдено больше страниц по сравнению с другими языками. При этом предполагается, что существует корреляция между количеством найденных страниц и числом специалистов, использующих этот язык.

TIOBE Programming Community Index (Индекс TIOBE)

Каждый год, начиная с 2003, авторами TIOBE выбирается язык года
(Programming Language of the Year):
2017 C
2016 Go
2015 Java
2014 Javascript
2013 Transact-SQL
2012 Objective-C
2011 Objective-C
2010 Python
2009 Go
2008 C
2007 Python
2006 Ruby
2005 Java
2004 PHP
2003 C++

Слайд 16

TIOBE Programming Community Index (Индекс TIOBE)

TIOBE Programming Community Index (Индекс TIOBE)

Слайд 17

РЕЙТИНГИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ Рейтинг синтезирует результаты, полученные по 12 метрикам из

РЕЙТИНГИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Рейтинг синтезирует результаты, полученные по 12 метрикам из 10

источников: поиск Google, Google Trends, Twitter, GitHub, Stack Overflow, Reddit, Hacker News, Career Builder, Dice, IEEE Xplore Digital Library.
Рейтинг обновляется ежегодно.

IEEE Spectrum’s Top Programming Languages

10 самых популярных языков программирования 2018 года
по данным IEEE Spectrum

Слайд 18

IEEE Spectrum’s Top Programming Languages

IEEE Spectrum’s Top Programming Languages

Слайд 19

РЕЙТИНГИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ Этот рейтинг основан на том, как часто разработчики

РЕЙТИНГИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Этот рейтинг основан на том, как часто разработчики ищут

руководства по тому или иному языку программирования. Данные собираются в Google Trends по запросам " tutorial".

PYPL Popularity of Programming Language Index

Существуют также и др. рейтинги

Слайд 20

Слайд 21

PEP – Python Enhancement Proposal (Предложения по развитию Python) — это

PEP – Python Enhancement Proposal (Предложения по развитию Python) — это

документ со стандартизированным дизайном, предоставляющий общую информацию о языке Python,
включая новые предложения, описания
и разъяснения возможностей языка.
PEP предлагаются как основной источник для предложения новых возможностей и для разъяснения выбора того или иного дизайна для всех основных элементов языка.
Выдающиеся PEP рецензируются, комментируются и утверждаются Гвидо ван Россумом, имеющим в проекте статус
«великодушного пожизненного диктатора».

Дальнейшая разработка

Слайд 22

Плюсы и минусы Python + открытый код; простота синтаксиса; наличие мощных

Плюсы и минусы Python

+

открытый код;
простота синтаксиса;
наличие мощных библиотек;
многоплатформенность;
бесплатность;
прост в изучении;
сообщество поддержки.


невысокая

скорость выполнения программ;
эволюция языка.
Слайд 23

Среды разработки (IDE) для Python IDE – Интегрированная среда разработки (англ.

Среды разработки (IDE) для Python

IDE – Интегрированная среда разработки (англ. Integrated

Development Environment)

IDLE
PyDev
Aptana
Wing
PyCharm
Eclipse
Emacs
Vim

NotePad++

Полный список редакторов можно найти на странице http://wiki.python.org/moin/PythonEditors.

Слайд 24

Слайд 25

ПЛЮСЫ И МИНУСЫ КОМПИЛЯЦИИ И ИНТЕРПРЕТАЦИИ КОМПИЛЯТОРЫ Быстрота работы программ Отсутствие

ПЛЮСЫ И МИНУСЫ КОМПИЛЯЦИИ И ИНТЕРПРЕТАЦИИ

КОМПИЛЯТОРЫ

Быстрота работы программ
Отсутствие надобности компилятора

на компьютере пользователя

+


Программа имеет зависимость от ОС, под которую была скомпилирована
Сложность отладки кода программы

ИНТЕРПРЕТАТОРЫ

Работают на любой платформе
Более совершенные и наглядные средства диагностики ошибок
Упрощение отладки исходных кодов программ
Меньшие размеры машинных кодов

+


Не может выполняться отдельно без программы -интерпретатора
Программа выполняется медленнее

Слайд 26

Виртуальная машина PYTHON Выполнение (PVM) Питон компилирует программу в байт-код, который

Виртуальная машина PYTHON

Выполнение
(PVM)

Питон компилирует программу в байт-код, который передается механизму под

названием виртуальная машина Python(PVM).
Цепочка операций выглядит следующим образом:
1. CPython компилирует ваш исходный код на Питоне в байткод.
2. Этот байткод запускается(интерпретируется)
на виртуальной машине CPython.
Байт-код – это внутреннее представление программы на языке Python.
Сильно упрощая: машинный код намного быстрее, но байткод лучше переносим и защищен.

Исходный
Текст
m.py

Байт-код
на python
m.pyc

Слайд 27

Разработчики языка Python придерживаются определённой философии программирования, называемой «The Zen of Python» («Дзен Питона»)

Разработчики языка Python придерживаются определённой философии программирования, называемой
«The Zen of

Python»
(«Дзен Питона»)
Слайд 28

Красивое лучше, чем уродливое. Явное лучше, чем неявное. Простое лучше, чем

Красивое лучше, чем уродливое.
Явное лучше, чем неявное.
Простое лучше, чем сложное.
Сложное лучше,

чем запутанное.
Плоское лучше, чем вложенное.
Разреженное лучше, чем плотное.
Читаемость имеет значение.
Особые случаи не настолько особые, чтобы нарушать правила.
При этом практичность важнее безупречности.
Ошибки никогда не должны замалчиваться.
Если не замалчиваются явно.
Встретив двусмысленность, отбрось искушение угадать.
Должен существовать один — и, желательно, только один — очевидный способ сделать это.
Хотя он поначалу может быть и не очевиден, если вы не голландец
Сейчас лучше, чем никогда.
Хотя никогда зачастую лучше, чем прямо сейчас.
Если реализацию сложно объяснить — идея плоха.
Если реализацию легко объяснить — идея, возможно, хороша.
Пространства имён — отличная штука! Будем делать их побольше!

«Дзен Питона»

Слайд 29

Python - самый стильный язык программирования в мире. Он не допускает

Python - самый стильный язык программирования в мире. Он не допускает

двоякого написания кода.
Так, языку Perl присущи зависимость от контекста и множественность синтаксиса, и часто два программиста пишущих на Perl, просто не понимают код друг друга.
В Python же код можно написать только одним способом.
В нем отсутствуют лишние конструкции.
Все программисты должны придерживаться стандарта РЕР-8.
Более читаемого кода нет ни в одном другом языке программирования.

На английском: https://www.python.org/dev/peps/pep-0008/
На русском: http://pep8.ru/doc/pep8/

Слайд 30

Pep (англ.) — бодрость духа, энергия Этот документ описывает соглашение(стандарт) о

Pep (англ.) — бодрость духа, энергия
Этот документ описывает соглашение(стандарт) о том,

как писать код для языка python, включая стандартную библиотеку, входящую в состав python.
PEP 8 создан на основе рекомендаций ван Россума
с добавлениями от Барри Уорсоуа.
Ключевая идея такова: код читается намного больше раз, чем пишется. Собственно, рекомендации о стиле написания кода направлены на то, чтобы улучшить читаемость кода и сделать его согласованным между большим числом проектов.
В идеале, весь код будет написан в едином стиле, и любой сможет легко его прочесть.

PEP 8 – руководство по написанию кода на Python

Слайд 31

Две причины для того, чтобы нарушить данные правила: – Когда применение

Две причины для того, чтобы нарушить данные правила:
– Когда применение правила

сделает код менее читаемым даже для того, кто привык читать код, который следует правилам.
– Чтобы писать в едином стиле с кодом, который уже есть в проекте и который нарушает правила (возможно, в силу исторических причин).
Слайд 32

Начинающим разработчикам на Python рекомендуется распечатать и повесить на стену используйте

Начинающим разработчикам на Python рекомендуется распечатать и повесить на стену

используйте 4

пробела для отступа и не используйте табы, не смешивайте их
максимальная длина строки 79 символов; для разрыва строки используйте отступы или бэкслеш
функции верхнего уровня и определения классов отделяйте двумя пустыми строками
определения методов внутри класса отделяйте одной пустой строкой
дополнительные пустые строки используйте для логической группировки методов
кодировка файлов должна быть Latin-1, а в Питоне 3 и выше — utf-8
каждый импортируемый модуль с новой строки
порядок импортов: стандартные модули, third-party модули, локальные модули приложения
пустая строка между каждой группой импортов
избегайте лишних пробелов внутри скобок; перед запятыми, точкой с запятой и двоеточиями
избегайте лишних пробелов перед скобками с аргументами функций и скобками с индексами
избегайте больше чем одного пробела между операторами (= — + итд)
используйте одиночный пробел для выделения операторов
избегайте пробелов вокруг ‘=’, который используется для параметров по-умолчанию и keyword аргументов
обновляйте комментарии вместе с кодом
пишите комментарии по-английски
избегайте имён из одиночных l, O, I
для модулей и пакетов используйте короткие и т.д.
Слайд 33

Среды разработки (IDE) для Python IDE – Интегрированная среда разработки (англ.

Среды разработки (IDE) для Python

IDE – Интегрированная среда разработки (англ. Integrated

Development Environment)

IDLE
PyDev
Aptana
Wing
PyCharm
Eclipse
Emacs
Vim

NotePad++

Слайд 34

Shebang Основная идея - улучшение переносимости между платформами и компьютерами. Не

Shebang
Основная идея - улучшение переносимости между платформами и компьютерами. Не гарантируется,

что на различных системах исполняемый файл будет лежать по пути, который указан в shebang. Использование env позволяет снизить этот риск за счет запуска команды на основе данных из переменной среды PATH
#!/urs/bin/env python3

Эти две строки кода желательно писать в самом начале, если пишете сценарий в обычных текстовых редакторах

Если собираемся внутри скрипта на питоне писать текст на русском или ещё каком языке кроме английского, то в начало файла нужно вставить строку:
# -*- coding: utf-8 -*-

Слайд 35

ИТАК!!!

ИТАК!!!

Слайд 36

…ТЫ СДЕЛАЛ ВЫБОР?

…ТЫ СДЕЛАЛ ВЫБОР?