Тесты Пообщаться с GPT Протестировать код
Программирование Аналитика Дизайн Маркетинг Управление проектами
30 Окт 2023
11 мин
5171

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

Пройдите тест, узнайте какой профессии подходите

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

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

Что такое Python

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

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

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

История создания языка

Гвидо ван Россум в конце 1980-х годов работал в исследовательском институте CWI в Нидерландах. Там он разрабатывал язык программирования ABC. Гвидо хотел создать инструмент для тех, кто никогда не программировал и не разбирался в устройстве компьютеров. Но язык медленно распространялся, обратной связи от пользователей было мало. В 1987 году проект закрыли.

мужчина в очках

Гвидо ван Россум. Источник: gvanrossum.github.io

Ван Россум перешел в команду операционной системы Amoeba. Разработчики столкнулись с проблемой — системе не хватало языка сценариев. И Гвидо решил написать новый язык на основе AВС. Он сделал первые наброски во время рождественских праздников в 1989 году и показал их коллегам. Они оценили простоту языка и стали использовать его во внутренних проектах.

Еще два года Гвидо дорабатывал код в свободное время. И в 1991 году он представил первую версию Python 0.9.0.

Язык быстро набирал популярность, но вместе с тем росло и беспокойство: всё сообщество зависело от одного человека. В 1995 году Майкл Маклей вместе с Гвидо создали Python Software Foundation — некоммерческую организацию, которая отвечает за защиту и развитие языка Python. В компании несколько руководителей, а сам ван Россум до 2018 года имел титул «Великодушный пожизненный диктатор» (Benevolent Dictator For Life).

В 2000 году вышел релиз первой крупной версии языка — Python 2. Он получил широкое распространение, но имел некоторые недостатки, например неоднозначность в кодировке текста. В 2008 году появился Python 3, который исправил многие проблемы и переработал архитектуру языка. Однако версии были несовместимы, из-за чего некоторые программисты продолжали работать на Python 2. Официальная поддержка второй версии завершилась только в 2020 году.

В 2019 году Гвидо вышел из руководства Python Software Foundation. Теперь язык Python не зависит от своего создателя и развивается силами сообщества.

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

Главный плюс Python — его простота. За пару месяцев можно изучить азы и начать разработку несложных программ. При этом у языка открытый исходный код, его можно использовать бесплатно. Но даже у него есть недостатки, которые важно знать.

Плюсы Python:

✅ Понятный синтаксис и читаемость. 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-разработчика

По данным «Хабра», во втором полугодии 2024 года Python-разработчик зарабатывал в среднем 200 000 ₽. Это на 3% больше, чем в первом полугодии того же года.
Динамика зарплат разработчикеов

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

Диапазон зарплат Python-разработчиков в Москве в 2024 году

Где используется

Чаще Python применяют в веб-разработке и Data Science. Например, 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 и Google обслуживают хранилища данных и облачные сервисы при помощи Python.

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

  • Бэкенд сайта. Python превращается в мощный серверный язык с помощью библиотек Django и Flask. На нём работают с URL-адресами, базами данных и HTML-файлами.
  • Блокчейн. Это последовательная цепочка, где каждый информационный блок связан с предыдущим. Чаще эту технологию применяют для транзакций криптовалюты, например биткоина. Блокчейн на Python ничем не уступает по производительности другим решениям.
  • Бот. Это программа, которая автоматически выполняет определенную последовательность команд. Бот используют в техподдержке или для анализа пользовательской активности. По этому принципу работают Google Analytics и «Яндекс Метрика».
  • База данных. Это основа любого большого проекта. В ней есть информация о пользователях, данные об изменении программ. Системы управления базами тоже пишут на Python.

    На курсе Skypro «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 изучают на курсе Skypro «Python-разработчик». Вы разберетесь в синтаксисе языка, научитесь работать с Linux, создадите собственную инфраструктуру и сможете проверять код на ошибки. Выполните реальные проекты, чтобы закрепить новые навыки. Вам для учебы понадобится максимум 14 часов в неделю.

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

Программирование похоже на занятия спортом. Нужно ежедневно выделять несколько часов и изучать новый материал.

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

Где искать информацию:

📕 Майкл Доусон. «Программируем на Python».
📕 Марк Лутц. «Изучаем Python».
📕 Пол Бэрри. «Изучаем программирование на Python».
📕 Тони Гэддис. «Начинаем программировать на Python».
📕 Большая подборка книг со ссылками на скачивание в телеграм-канале «Python книги».
📕 Каналы питонистов: Python Academy, Python School.

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

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

  • Python — простой язык программирования. У него понятный синтаксис и много полезных встроенных функций.
  • Python помогает быстро разрабатывать программы, но код выполняется с меньшей скоростью по сравнению с другими языками. Поэтому для масштабных проектов Python не используют.
  • Python-разработчикам открыты двери. Компании-гиганты — Google, «Яндекс», Сбербанк — охотно используют этот язык.
  • В России Python-разработчик в среднем зарабатывает 200 000 ₽. В Москве — от 114 942 ₽ до 459 770 ₽.
  • Один из принципов философии Python — никогда не бывает лучше, чем прямо сейчас. Дерзайте и изучайте.

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