24 Фев 2022
10 мин
2600

Как начать изучать Python

Преимущества Python — понятный синтаксис и читаемость, готовые библиотеки.

Содержание

Создатель Python — голландский программист Гвидо ван Россум. Он разрабатывал язык в свободное от работы время. Когда силы кончались, он падал в кресло и включал одну и ту же передачу — «Летающий цирк Монти Пайтона». Поэтому назвал свое детище в честь любимого шоу.

Что такое Python

Python — это скриптовый язык программирования. Скриптами называют сценарии работы программ для решения конкретных задач.

По данным TIOBE на декабрь 2021 года, Python — первый в рейтинге популярных языков программирования. Его любят за простоту и универсальность. Код на Python реально написать уже в первый день обучения. Его поймет человек и без технического образования.

В Skypro этот язык можно изучить на курсе «Python-разработчик». Вы не просто освоите теорию, но и сделаете реальные проекты: программу, которая позволяет расшифровать азбуку Морзе, виджет банковских операций и магазин электроники. Составите портфолио и получите диплом установленного образца.

Skypro: курс "Python-разработчик". Урок 1

Преимущества и недостатки

✅Понятный синтаксис и читаемость. Python написан на основе языка ABC. Он не подходит для системного программирования, но помогает освоить базу. Где Java использует пять строк, а C — четыре, Python обходится одной. Чтобы оформить логический блок, нужны отступы и пробелы. И никаких скобок.

✅Динамическая типизация. Программы работают с данными при помощи переменных. Чтобы создать переменную в других языках со статической типизацией — С, С++, TypeScript — необходимо указать тип, который в ней будет храниться. Но в Python язык сам присваивает нужный тип переменной. Это ускоряет разработку.

✅Сборщик мусора. В Python не нужно чистить внутреннюю память. Если часть кода перестает ссылаться на объект, сборщик мусора отправляет его в менеджер памяти. Это дополнительное хранилище для объектов весом менее 512 байт.

✅Готовые библиотеки. Это наборы инструментов для решения конкретных задач. Программисты называют их фреймворками. В Python — около сотни библиотек. Например:

  • Pygame для создания небольших игр;
  • NumPy для машинного обучения;
  • SQLAlchemy для анализа баз данных;
  • Bubot для робототехники.

❌Скорость работы программ. Динамическая типизация, хорошая читаемость облегчают работу программиста. Но ухудшают общую производительность. Python — это про скорость разработки, но не выполнения кода. Для сравнения: приложения для iOS на Swift работают почти в 10 раз быстрее. Python также не подходит для задач, которым важен большой объем памяти. Их лучше решать вставками на C или C++.

❌Зависимость от системных библиотек. Предположим, у нас есть два проекта: A и B. Оба написаны с помощью библиотеки C.

Проблема возникнет, если нужны разные версии библиотек. Например, 1.0.0 для A и 2.0.0 для B. Python не различает версии в каталоге пакетов.

Можно воспользоваться инструментом Virtualenv и создать отдельную виртуальную среду для каждого проекта, но и он с недостатками: избыточность полных методов изоляции, костыли, дублирование системных библиотек.

❌Global Interpriter Lock (GIL) — глобальная блокировка интерпретатора. Она накладывает ограничения на потоки и запрещает использовать несколько процессоров одновременно. Это основная проблема производительности в Python. Код GIL не менялся с первой версии языка. Остается надеяться, что разработчики уделят этому внимание в ближайших релизах.

Средняя зарплата Python-разработчика

Согласно информации на habr.com, в первом полугодии 2021 года Python-разработчик зарабатывал в среднем 130 000 ₽. Это на 8,3% больше, чем во втором полугодии 2020 года.

Рекрутинговое агентство RealHR по подбору digital- и IT-специалистов опубликовало вилку зарплат в Москве: от 114 942 до 402 298 ₽. Зарплата зависит от квалификации:

Диапазон зарплат Python-разработчиков в Москве во втором квартале 2021

Где и как применяют

Чаще Python применяют в веб-разработке и data-science. На нем написали Instagram (организация признана экстремистской и запрещена на территории России) и DropBox. Netflix и Spotify использовали Python для анализа пользовательских данных. А также с его помощью создали сервисы персональных рекомендаций.

Вот краткий список сфер применения Python.

Веб-разработка. Чтобы дополнить функционал Python, используют фреймворки по типу Django, Pyramid или Flask.

Софт. На Python писали некоторые десктопные программы, например, BitTorrent-клиент.

Игры. Модули игр EVE Online, Battlefield 2, World of Tanks создавали на Python.

Встроенные системы. Python используют в компьютерах Raspberry Pi для работы с датчиками через GPIO. И в Сбере — для управления банкоматами.

Программные скрипты. На Python пишут плагины и скрипты к готовым программам. Этот язык применяют для анимации в Disney.

Системное администрирование. На Python работают практически все серверы ОС Linux.

Data science. IT-гиганты — Amazon, Facebook (организация признана экстремистской и запрещена на территории России), Google — обслуживают хранилища данных и облачные сервисы при помощи Python.

Что можно написать на Python

Back-end сайта. Python превращается в мощный серверный язык с помощью библиотек Django и Flask. На нем работают с URL-адресами, базами данных и HTML-файлами.

Блокчейн. Это последовательная цепочка, где каждый информационный блок связан с предыдущим. Чаще эту технологию применяют для транзакций криптовалюты. Например, биткоина. Блокчейн на Python ничем не уступает по производительности другим решениям.

Бот. Это программа, которая автоматически выполняет определенную последовательность команд. Ботов используют в техподдержке или для анализа пользовательской активности. По этому принципу работают Google Analytics и Яндекс.Метрика.

База данных. Это основа любого большого проекта. В ней есть информация о пользователях, данные об изменении программ. Системы управления базами тоже пишут на Python.

На курсе «Python-разработчик» изучите базы данных. Сможете корректно получать из них информацию, автоматизировать и настраивать процессы ее передачи, писать базовые и сложные запросы. Сделаете проект: создадите базу данных, которая автоматически заполняет и хранит информацию об интересных вакансиях по вашей специальности.

Дополненная реальность. Python используют для AR-приложений. Проецировать виртуальные объекты на реальные помогают специальные метки. Они накладывают изображение на окружающее пространство.

BitTorrent-клиент. Это технология для быстрого обмена большими объемами данных. Все версии программы до шестой включительно писали на Python.

Нейронная сеть. Мы уже упоминали Netflix и Spotify, чьи сервисы рекомендаций создавали при помощи Python. Добавим еще Amazon и Uber. Они используют Python для подбора товаров и такси.

Парсер. Это ПО для сбора и обработки информации. С его помощью следят за курсом доллара или анализируют целевую аудиторию в соцсетях. Чтобы создать парсеры, на Python нужны библиотеки: Beautiful Soup, Ixml и Requests.

Что не стоит писать на Python

❌Микроконтроллеры. Хотя и существует MicroPython, реальный список микроконтроллеров с поддержкой Python — почти нулевой.

❌Кросс-платформенные GUI-приложения. У Python есть специальные биндинги для создания графического интерфейса — PyQt или Tkinter. Но ни с одним из них не разработать полноценное приложение.

❌Мобильные приложения. Для них больше подходят Java или C.

Основы Python

Синтаксис — набор правил:

  • Конец строки — конец инструкции. Ставить точку с запятой не надо.
  • Инструкции группируют в блоки по длине отступов. Один блок — одинаковый размер отступа в каждой строке.
  • Вложенные инструкции пишут по единому шаблону. Основная инструкция → двоеточие → вложенный блок кода с отступом.

Циклы. Нужны для повторения частей кода. Ряды циклов называют итерациями. Python поддерживает два цикла:

  1. For — для перебора элементов последовательности. Например, чтобы повторить фрагмент кода n раз.
  2. While — для перебора блока кода. Например, когда непонятно, сколько раз нужно повторить итерацию.

Функции. В программировании функция — обособленный участок кода, который принимает данные ввода — аргументы. Функция принимает произвольное количество аргументов или не принимает их вовсе.

Вызвать функцию — передать ей вводные для выполнения и вывода результата. Чтобы определить функцию, вводят команду «def». Например:

def add(x, y):
return x + y

Ключевое слово «def» сообщает Python, что вы определяете функцию. После укажите имя, поставьте круглые скобки и напишите в них один или несколько параметров. После скобок ставьте двоеточие, а новую строку начинайте с отступа в четыре пробела. В примере выше функция add принимает два параметра (x и y) и возвращает их сумму.

Классы и методы. Python поддерживает объектно-ориентированную парадигму программирования. В основе — классы и объекты. Первые можно сравнить с чертежом, а вторые — с готовой моделью. Объект для Python — строка, список, модуль.

Класс объединяет набор функций и переменных. Функции — это методы класса, которые определяют его поведение. Переменные класса называют атрибутами. В них хранится состояние класса.

Списки в Python — упорядоченные изменяемые наборы объектов. При этом объекты могут быть разными — от целых чисел до строк. Списки могут также хранить в себе списки.

Массивы. Это структуры данных для хранения значений одного типа. Массивы очень похожи на списки, но между ними есть одно отличие. Списки содержат значения разных типов данных, но массивы — никогда.

Чтобы использовать массив, импортируйте array модуль:

from array import *

После импорта объявите сам массив:

arrayIdentifierName = array(typecode, [Initializers])

Модули. Это отдельные файлы с кодом. Импортировать модули и получить доступ к классам, функциям и объектам может любая программа. Для создания модуля необходим файл с расширением:

*.py

Название файла — название модуля. Для подключения модуля из стандартной библиотеки нужна команда:

import

После указывают название модуля.

Ошибки и исключения. В Python есть два типа ошибок: синтаксические и исключения. Первые влияют на работу программы и не позволяют запустить код. Вот что произойдет, если определить строку кавычками только с одной стороны:

my_string = "Hello, world.

Сообщение Python:

Traceback (most recent call last):
File error.py, line 1
my_string = "Hello, world.
SyntaxError: EOL while scanning string literal

К исключениям относят все ошибки, которые нельзя записать в синтаксические. Например, деление на ноль:

z = 100 / 0

Запускаем этот код, и программа выдает ошибку:

Traceback (most recent call last):
File "", line 1, in
ZeroDivisionError: division by zero

Чтобы обработать исключения, используют ключевые слова «try» и «except».

Виртуальные среды. Цель виртуальной среды — создать изолированное окружение проектов Python. Подобно песочнице, каждое приложение играет со своими фреймворками и не трогает другие. Виртуальные среды облегчают программисту жизнь. Особенно, если он пишет код на сторонних библиотеках. Количество окружений не ограничено.

У разработчиков Python есть своя философия. С нотами дзена и абсурдного британского юмора. Чтобы узнать ее принципы, наберите в строке ввода команду:

import this

философия Python

Основы Python изучают на курсе «Python-разработчик». Вы разберетесь в синтаксисе языка, научитесь работать с Linux, создадите собственную инфраструктуру и сможете проверять код на ошибки. Выполните реальные проекты, чтобы закрепить новые навыки. На обучение понадобится максимум 14 часов в неделю.

С чего начать изучать

Программирование похоже на занятия спортом. Чтобы чего-то достичь, нужно усердно тренироваться: ежедневно выделять несколько часов на изучение.

Главное — понять основы. Заходите на YouTube и смотрите бесплатные уроки, читайте официальное руководство, книги и много практикуйтесь.

📕Майкл Доусон «Программируем на Python»

📕Марк Лутц «Изучаем Python»

📕Пол Бэрри «Изучаем программирование на Python»

📕Тони Гэддис «Начинаем программировать на Python»

📕Большая подборка книг со ссылками на скачивание в Телеграм-канале Python книги

📕Каналы питонистов Python Academy, Python School

Онлайн-университет Skypro обучает Python за 10 месяцев. Подойдет тем, кто не знает, как начать с нуля. Или работает в смежной области и хочет сменить профессию. Пройдите обучение в реальной рабочей среде с практикующими наставниками, освойте главное по 40-минутным лекциям и заданиям. Задавайте вопросы в любое время куратору в чате и раз в неделю на живом вебинаре.

В конце получите диплом о профессиональной переподготовке. Рекрутер поможет составить цепляющее резюме и подготовиться к собеседованиям. Доступ к материалам курса остается у вас навсегда.

Что важно знать о Python

  • Python — простой язык программирования. У него понятный синтаксис и много полезных встроенных функций.
  • По скорости разработки Python нет равных. Но скорость выполнения кода оставляет желать лучшего. Поэтому для масштабных проектов берут другие языки.
  • Python-разработчикам открыты двери. Компании-гиганты — Google, Facebook (организация признана экстремистской и запрещена на территории России), Яндекс, Сбербанк — охотно используют этот язык.
  • В России Python-разработчик в среднем зарабатывает 130 000 ₽. В Москве — от 114 942 до 402 298 ₽.
  • Один из принципов философии Python — никогда не бывает лучше, чем прямо сейчас. Дерзайте и изучайте.

Содержание

Добавить комментарий

Получить iPhone 15
Пройдите тест, узнайте какой профессии подходитеНачать тест
+