Язык программирования Python: обучение с нуля в ВУЗе. Омск.
Язык программирования Python: обучение с нуля в Омске в рамках направления Прикладная информатика в экономике. Обучение очное и заочное.
Python пито́н или па́йтон, называйте как Вам удобнее. Python — это высокоуровневый язык программирования общего назначения с динамической строгой типизацией и автоматическим управлением памятью], ориентированный на повышение производительности разработчика, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ. Язык является полностью объектно-ориентированным — всё является объектами. Необычной особенностью языка является выделение блоков кода пробельными отступами. Синтаксис ядра языка минималистичен, за счёт чего на практике редко возникает необходимость обращаться к документации. Сам же язык известен как интерпретируемый и используется в том числе для написания скриптов. Недостатками языка являются зачастую более низкая скорость работы и более высокое потребление памяти написанных на нём программ по сравнению с аналогичным кодом, написанным на компилируемых языках, таких как Си или C++.
Python является мультипарадигмальным языком программирования, поддерживающим императивное, процедурное, структурное, объектно-ориентированное программирование, метапрограммирование и функциональное программирование. Задачи обобщённого программирования решаются за счёт динамической типизации. Аспектно-ориентированное программирование частично поддерживается через декораторы, более полноценная поддержка обеспечивается дополнительными фреймворками. Такие методики как контрактное и логическое программирование можно реализовать с помощью библиотек или расширений. Основные архитектурные черты — динамическая типизация, автоматическое управление памятью, полная интроспекция, механизм обработки исключений, поддержка многопоточных вычислений с глобальной блокировкой интерпретатора (GIL), высокоуровневые структуры данных. Поддерживается разбиение программ на модули, которые, в свою очередь, могут объединяться в пакеты.
Эталонной реализацией Python является интерпретатор CPython, поддерживающий большинство активно используемых платформ[30] и являющийся стандартом де-факто языка. Он распространяется под свободной лицензией Python Software Foundation License, позволяющей использовать его без ограничений в любых приложениях, включая проприетарные. CPython компилирует исходные тексты в высокоуровневый байт-код, который исполняется в стековой виртуальной машине. К другим трём основным реализациям языка относятся Jython (для JVM), IronPython (для CLR/.NET) и PyPy[18][34]. PyPy написан на подмножестве языка Python (RPython) и разрабатывался как альтернатива CPython с целью повышения скорости исполнения программ, в том числе за счёт использования JIT-компиляции[34]. Поддержка версии Python 2 закончилась в 2020 году. На текущий момент активно развивается версия языка Python 3[36]. Разработка языка ведётся через предложения по расширению языка PEP (англ. Python Enhancement Proposal), в которых описываются нововведения, делаются корректировки согласно обратной связи от сообщества и документируются итоговые решения.
Стандартная библиотека включает большой набор полезных переносимых функций, начиная от функционала для работы с текстом и заканчивая средствами для написания сетевых приложений. Дополнительные возможности, такие как математическое моделирование, работа с оборудованием, написание веб-приложений или разработка игр, могут реализовываться посредством обширного количества сторонних библиотек, а также интеграцией библиотек, написанных на Си или C++, при этом и сам интерпретатор Python может интегрироваться в проекты, написанные на этих языках. Существует и специализированный репозиторий программного обеспечения, написанного на Python, — PyPI. Данный репозиторий предоставляет средства для простой установки пакетов в операционную систему и стал стандартом де-факто для Python. По состоянию на 2019 год в нём содержалось более 175 тысяч пакетов.
Python стал одним из самых популярных языков, он используется в анализе данных, машинном обучении, DevOps и веб-разработке, а также в других сферах, включая разработку игр. За счёт читабельности, простого синтаксиса и отсутствия необходимости в компиляции язык хорошо подходит для обучения программированию, позволяя концентрироваться на изучении алгоритмов, концептов и парадигм. Отладка же и экспериментирование в значительной степени облегчаются тем фактом, что язык является интерпретируемым. Применяется язык многими крупными компаниями, такими как Google или Facebook. По состоянию на апрель 2021 года Python занимает третье место в рейтинге TIOBE популярности языков программирования с показателем 11,03 %. «Языком года» по версии TIOBE Python объявлялся в 2007, 2010, 2018 и 2020 году.
Язык программирования Python: обучение с нуля в Омске в рамках направления Прикладная информатика в экономике. Обучение очное и заочное.
Кратко про приемущества и недостаки Питона
Достоинства
Простота. Python – понятный язык, с которым разберется любой желающий. Не требуется знать принципы ООП или сложные структуры данных. Возьмем для сравнения Java. Как на Java вывести в консоль «Hello, World»? Нужно создать класс, в котором объявить публичный статический метод main, принимающий в качестве аргумента массив строк. Далее в этом методе вызывается другой класс, который, наконец, выведет надпись в консоль. Как это делается в Python? Просто пишем: print(‘Hello, World’) и сразу же получаем результат.
Java:
public class Example { // Класс public static void main(String[] args) { // Публичный статический метод System.out.println("Hello, world!"); // Статический класс }
}
Python:
print("Hello, world!")
Расширяемость. Большое количество специализированных библиотек включает множество уже готовых программных конструкций. Это позволяет не тратить силы на их самостоятельную реализацию и экономит время программиста. Особенно стоит подчеркнуть библиотеки для Data Science: Scikit-learn, Matplotlib, Seaborn, Pandas, TensorFlow. Они включают различные алгоритмы Machine Learning, статистические инструменты, методы визуализации и интеллектуального анализа данных.
Открытость. В отличие от закрытых и устоявшихся языков программирования, таких как Java (Oracle), C# (Microsoft) и пр., каждый разработчик может внести свой вклад в развитие языка. Например, если вы нашли какой-то баг или хотите расширить функциональные возможности языка, сделайте pull request в репозиторий на github или просто сообщите о своих идеях во вкладке issues Такая открытость дает уверенность, что Python не содержит потенциальных уязвимостей, тайных функций слежений или других опасных аспектов.
Читабельность. Python-сообщество имеет собственную конвенцию, так называемый PEP 8 [2], принципы которого они стремятся соблюдать на практике. Например, соблюдать отступ в 4 пробела после определения класса, функции или условия; импорт модулей делать в начале файла, а после ставить 2 пустые строки; в случае большого количества аргументов у функции, они должны быть написаны друг под другом, образуя визуальную таблицу:
def long_function_name(var_one, var_two, var_three, var_four)
Не приветствуется скомпонованные условия, когда несколько операций лежат на одной строчке:
# Неправильно if foo == 'blah': do_blah_thing() do_one(); do_two(); do_three() # Правильно if foo == 'blah': do_blah_thing() do_one() do_two() do_one() do_two() do_three()
Все это экономит время и силы разработчика при чтении чужого кода. Также отличная читаемость Python-кода достигается за счет лаконичности языка.
Удобство. Встроенные структуры данных, такие как списки, словари, кортежи и множества, легко понятны и не отвлекают от работы по написанию кода. А способы их создания максимально просты и запоминаемы. Например, списки обворачиваются в квадратные скобки, кортежи – в круглые, множества и словари – в фигурные:
fruits_l = ["banana", "apple", "lemon"] # список (list)
fruits_t = ("banana", "apple", "lemon") # кортеж (tuple)
fruits_s = {"banana", "apple", "lemon"} # множество (set)
fruits_d = {"banana": 2, "apple": 6, "lemon": 3} # словарь (dictionary)
Низкая скорость. Python – интерпретируемый язык, т.е. выполняется построчно и медленно. Как правило, в небольших проектах это не критично: обычно клиент даже не замечает, что код выполняется на полсекунды дольше. А в масштабных системах с большим объемом данных и сложными вычислениями разница уже заметна.
Динамическая типизация, которая позволяет писать кратко, не объявляя тип переменной, например int. С одной стороны, это экономит время разработчика, но может привести к ошибкам при попытке выполнить операцию с несоответствующим типом данных. В результате могут появиться ошибки времени выполнения – runtime errors. Чтобы предотвратить это, потребуется дополнительное тестирование кода и добавление проверок на типы.
Привычка к простоте. Человек быстро привыкает к хорошему: лаконичность и понятность Python-кода приводит к тому, что программист ищет этого же и в других языках. Например, читая Java-программу, питонист может возмутиться от обилия классов, круглых и фигурных скобок, странного объявления переменных и прочих неочевидных особенностей. Однако, мастер не должен зависеть от своего инструмента, а разработчик – от языка программирования.
Язык программирования Python: обучение с нуля в Омске в рамках направления Прикладная информатика в экономике. Обучение очное и заочное.
Просмотров: 3808