Хочу научиться программировать на Python. С чего начать?
Авторизуйтесь
Хочу научиться программировать на Python. С чего начать?
Рассказываем, как действовать, если вы решили освоить Python 3 с нуля: что учить в первую очередь, где брать знания и что делать дальше?
Зачем учить Python?
Python имеет ряд преимуществ:
Среди главных особенностей — динамическая типизация, проблемы с совместимостью версий, а также низкая скорость выполнения кода по сравнению с другими языками программирования. Если вы учите Python не первым языком, синтаксис может показаться вам непривычным.
Python для создания продуктов используют такие корпорации, как Google, Dropbox, Mozilla, Facebook, Yandex, Red Hat, Microsoft, Intel и другие.
Что учить?
Синтаксис
Дополнительно
IDE и редакторы кода
Писать в IDLE или Python Shell удобно только простой код, но для проектов лучше найти интегрированную среду разработки (IDE) или редактор кода. IDE включает в себя редактор с подсветкой синтаксиса и автодополнением, инструменты сборки, выполнения и отладки и другие функции. В большинстве редакторов есть подсветка синтаксиса и форматирование, выполнение и отладка кода. Как правило, этот инструмент работает быстрее IDE, но имеет меньше функций. Среди самых популярных платформ — PyCharm, Wing IDE, Komodo и другие. Больше вариантов — в нашем обзоре.
С распределенной системой управления версиями (Git) нужно познакомиться в начале обучения. Среди основных навыков — создание и перемещение файлов в каталогах, инициализация Git-репозитория и создание коммитов, а также настройка репозиториев в GitHub.
Где учить?
Попробуйте каждый из инструментов. После пары первых уроков будет ясно, подходит он вам или нет.
С чего начать программирование на Python
Python это мощный и высокоуровневый объектно-ориентированный язык программирования, созданный Гвидо ван Россумом. Отличается простым в использовании синтаксисом, что делает его идеальным языком для тех, кто решил впервые научиться программированию.
Перед вами подробное руководство по началу работы с Python, в котором также найдете ответы на вопросы о том, почему нужно изучить его и как его учить. Однако, если вы знаете другие языки программирования и хотите максимально быстро начать работу с Python, посмотрите уроки Python для начинающих.
Что такое программирование на Python?
Перед началом познакомиться с самим языком.
Python — язык общего назначения. Имеет приложения разных направлений: веб-разработки (например, Django и Bottle ), научных и математических вычислений ( Orange, SymPy, NumPy ) для настольных графических пользовательских интерфейсов ( Pygame, Panda3D ).
Синтаксис языка простой, а длина кода относительно короткая. Работать на Python приятно, потому что он позволяет решать задачу, а не фокусироваться на сложном синтаксисе.
История Python
Python старый язык, созданный Гвидо Ван Россумом. Разработка началась в конце 1980-х., и в феврале 1991 года вышла первая версия.
Зачем создан Python?
В конце 1980-ых, Гвидо Ван Россум работал над группой операционных систем Amoeba. Он хотел использовать интерпретируемый язык, такой как ABC (у ABC простой и доступный в понимании синтаксис), который мог бы получить доступ к системным вызовам Amoeba. Поэтому он решил создать масштабируемый язык. Это привело к созданию нового языка, у которого позже появилось название Python.
Почему выбрали Python
Нет. Он не назван в честь опасной змеи. Россум был фанатом комедийного сериала в конце 70-х. Название “Python” было взято из этого же сериала “Monty Python’s Flying Circus” (Летающий цирк Монти Пайтона).
Дата выпуска версий языка
| Версия | Дата выпуска |
|---|---|
| Python 1.0 (первый стандартный выпуск) Python 1.6 (последняя выпущенная версия) | Январь 1994 Сентябрь 5, 2000 |
| Python 2.0 (представлены списки) Python 2.7 (последняя выпущенная версия) | Октябрь 16, 2000 Июль 3, 2010 |
| Python 3.0 (Сделан акцент на удаление дублирующих конструкций и модулей). Python 3.10 (Последняя обновленная версия) | Апрель 4, 2021 настоящее время |
Особенности программирования на Python
Приложения на Python
Сайты, такие как Mozilla, Reddit, Instagram и PBS написаны на Python.
Научные и цифровые вычисления
У Python много библиотек для научных и математических вычислений. Есть библиотеки, такие как: SciPy и NumPy которые используются для общих вычислений. И специальные библиотеки, такие как: EarthPy для науки о Земле, AstroPy для астрономии и так далее.
Также, язык часто используется в машинном обучении, анализе и сборе данных.
Создание прототипов программного обеспечения
Python медленный, в сравнении с компилированными языками, такими как C++ и Java. Это не очень практичный выбор, если ресурсы ограничены и при этом нужна максимальная эффективность.
Тем не менее, Python — прекрасный язык для создания прототипов. Используйте Pygame (библиотека для создания игр), чтобы создать для начала прототип игры. Если прототип понравился, используйте язык C++ для создания реальной игры.
Простой язык для изучения программирования
Python используется для обучения программированию детей и новичков.
Это хороший язык с множеством функций и возможностей. Тем не менее это один из самых простых языков для изучения из-за простого в использовании синтаксиса.
4 причины выбрать Python в качестве первого языка
Первая программа на Python
Часто программа, которая называется “Hello, World!” используется для демонстрации языка программирования новичкам. “Hello, World!” это простая программа, которая выводит “Hello, World!”
Программа сложения двух чисел
Как работает эта программа?
Строка 1: # Сложите два числа
Строка, начинающаяся с # в программировании на Python — комментарий.
Комментарии используются для описания цели строки кода. Это поможет вам, так же как и другим программистам понять смысл кода. Они игнорируются компиляторами и интерпретаторами.
Строка 2: num1 = 3
Здесь, num1 — переменная. Вы можете сохранять значение в переменной. В этом случае, 3 сохраняется в переменной.
Строка 5: print(sum)
Функция print() выводит результат на экран. В нашем случае, она выводит на экран 8.
Важные вещи, о которых следует помнить.
Для представления инструкции в Python, используется новая строка (enter). Использование “;” в конце утверждения не требуется (в отличии C/C++, JavaScript, PHP ).
Вместо фигурных скобок < >, используются отступы (4 пробела) для перехода на новый блок.
Научитесь самостоятельно программировать на Python
Изучите Python с помощью PythonRU.com
PythonRu предлагает уроки и примеры, которые помогут в обучении программированию с нуля.
Наши материалы предназначены для начинающих программистов, которые владеют базовыми знаниями о программировании в целом. В каждом учебном пособии описаны примеры и подробное объяснение.
Также рекомендуем посмотреть наши примеры кода. Как только вы поймете как работает библиотека, попробуйте написать что-то новое. Это лучший способ научиться программированию.
Рекомендуемые книги
Если вы настроены серьезно обучаться программированию, следует обзавестись хорошей книгой.
Чтение книги по программированию требует много терпения и времени. Но вы получите общую картину концепций программирования в книге, которую, возможно, не найдете в другом месте.
| Обложка | Описание |
|---|---|
![]() | Изучаем Python купить и скачать Третье издание «Изучаем Python» – это учебник, написанный доступным языком, рассчитанный на индивидуальную скорость обучения. В книге представлены основные типы объектов в языке Python, порядок их создания и работы с ними, а также функции как основной процедурный элемент языка. |
![]() | Программирование на Python 3 купить и скачать Автор начинает с описания ключевых элементов Python, знание которых необходимо в качестве базовых понятий. Затем обсуждаются более сложные темы, поданные так, чтобы читатель мог постепенно наращивать свой опыт: распределение вычислительной нагрузки между несколькими процессами и потоками, использование сложных типов данных, управляющих структур и функций, создание приложений для работы с базами данных SQL и с файлами DBM. |
![]() | Python и анализ данных купить и скачать Книгу можно рассматривать как современное практическое введение в разработку научных приложений на Python, ориентированных на обработку данных. Описаны те части языка Python и библиотеки для него, которые необходимы для эффективного решения широкого круга аналитических задач: интерактивная оболочка IPython, библиотеки NumPy и pandas, библиотека для визуализации данных matplotlib и др. |
![]() | Python для детей и родителей купить и скачать Научите своих детей программировать уже сейчас с помощью этой книги! В книге представлен язык Python, один из самых популярных и простых. Вы найдете здесь много упражнений – полезных, интересных и забавных, поэтому ваш ребенок не заскучает. Материал написан доступно и просто, поэтому ему не составит труда освоить азы программирования. |
Python — потрясающий язык. Синтаксис настолько прост, и длина кода настолько коротка, что делает его понятным и легким в написании.
Если вы только начинаете программировать, Python— отличный выбор. Вы будете удивлены тому, сколько задач решает Python как только изучите его основы.
Легко упустить из виду факт, что Python — мощный язык. Хорош для обучения программированию. Воплотите свою идею, создайте игру или начните с Data Science, Python поможет во всем, чтобы вы не затеяли.
Начинаем программировать на Python
Рассказываем, зачем учить Python и как это поможет при работе в Data Science. Идём пошагово: от установки дистрибутива до первых практических опытов.
Статья подготовлена на основе нашего вебинара с Валентином Пановским.
В бэкграунде — программирование, французский язык, академическое рисование, капоэйра. Сейчас учит финский. Любит путешествия и Балтийское море.
Python — высокоуровневый язык программирования, названный так в честь британского комедийного телешоу «Летающий цирк Монти Пайтона».
Зачем учить Python, где и кому он нужен
Почему именно Python? Причин много:
Data Science, или наука о данных, сочетает в себе математику, статистику, IT и знания о бизнесе. Python фактически стал отраслевым стандартом в Data Science: чаще всего разработка ведётся именно на нём. Специалисты в этой области занимаются анализом данных и работают над их визуализацией. Data Science сейчас быстро развивается, поэтому разработчики нужны компаниям всё чаще.
Особенности Python
Плюсы:
Минусы:
Важная особенность: в Python не указывается тип переменных. Это даёт большую гибкость, потому что в одну переменную можно записать сначала int (целое число), а потом float (число с плавающей точкой) или str (строка, текст), и тип поменяется сам. За эту гибкость, к сожалению, приходится расплачиваться скоростью.
По Python много мануалов как на английском, так и на русском языке. Однако знание английского вам сильно поможет: во-первых, большинство команд переводится с английского буквально (если вы знаете язык, вам не придётся их зубрить), а во-вторых, подсказки к командам и описания ошибок выводятся тоже на английском.
Начало работы в Python
Чтобы начать программировать, нужно скачать и установить дистрибутив. Для новичков хорошо подойдёт Anaconda.
🐍 Самоучитель для начинающих: как освоить Python с нуля за 30 минут?
Miroslav Kungurov
Прочитав статью, вы познакомитесь с особенностями языка Python, основными типами данных, условными операторы, циклами и работой с файлами. В заключении приведена подборка литературы и каналов на YouTube, а также бесплатных курсов.
Установка Python
Python в Ubuntu предустановлен. Чтобы узнать версию Python, откроем терминал комбинацией клавиш Ctrl + Alt + T и введем следующую команду:
Для Windows нужно скачать Python с официального сайта и установить как обычную программу.
Установка редактора кода
Для работы нам понадобится редактор кода (IDE). Самые популярные:
Для установки Atom в Ubuntu введем в терминале:

Создание проекта
Создадим проект, в котором будем хранить код и другие файлы. Для этого перейдем во вкладку File → Add Project Folder и выберем любую свободную папку.
Онлайн-редакторы кода
Если под рукой только смартфон, воспользуемся бесплатными онлайн-редакторами кода:
1. Синтаксис
Python использует отступы, чтобы обозначить начало блока кода:
Python выдаст ошибку, если вы пропустите отступ:
Рекомендуется использовать отступ, равный четырем пробелам.
2. Hello, World
Напишем в example.py следующую строчку:
У нас установлен плагин run-python-simply и запустить код мы можем двумя способами:
После запуска кода появится окно терминала с результатом или ошибкой.
‘Hello, World’ – строка (заключена в кавычки).
Python – язык с динамической типизацией, то есть нам не нужно заранее объявлять тип переменной, является ли она строкой, числом и так далее.
О функциях поговорим в конце статьи, сейчас разберемся со строками и другими типами данных.
3. Типы данных
3.1. Строки
Строка – упорядоченная последовательность символов, заключенная в одинарные или двойные кавычки:
Операции со строками
Изменение регистра первого символа к верхнему регистру с помощью метода title() :
Преобразование всех символов к верхнему и нижнему регистру методами upper() и lower() соответственно:
Объединение строк (конкатенация). Строки объединяются с помощью знака сложения + :
Вычисление длины строки. Чтобы определить длину строки воспользуемся встроенной функцией len() (сокращённое от англ. length):

Для получения элемента по индексу воспользуемся квадратными скобками [] :
В предыдущем примере по индексу мы получали один элемент строки. По срезу можно получить несколько элементов:
Как формируется срез:
Получим с помощью среза последний элемент:
Все элементы, кроме первого:
Все элементы, кроме последнего:
Создание копии строки через срез:
Методом replace() заменим символы в строке:
Преобразование строки в список индивидуальных символов:
3.2. Числа
Целые числа (int) не имеют дробной части:
Число с плавающей точкой (float) имеет дробную часть:
Операции над числами:
Порядок операций. Выражение в скобках будет просчитываться в первую очередь:
3.3. Списки
Список (англ. list) – набор упорядоченных элементов произвольных типов. Списки задаются квадратными скобками [] и содержат объекты любого типа: строки, числа, другие списки и так далее. Элементы можно менять по индексу.
Создадим список animals и выведем его на экран:
Обратимся к второму элементу списка:
Чтобы изменить элемент списка, обратимся к нему по индексу и присвоим новое значение:
Для добавления элемента в конец списка воспользуемся методом append() :
Метод insert() вставляет элемент по индексу:
Для удаления элемента из списка, обратимся к элементу по индексу, используя команду del :
Другой способ удаления – метод pop() :
В двух предыдущих примерах мы удаляли элемент по его индексу. Теперь удалим элемент по его значению с помощью метода remove() :
Чтобы упорядочить список по алфавиту используем метод sort() :
Список в обратном порядке выводится методом reverse() :
Для определения длины списка воспользуемся функцией len() :
3.4. Кортежи
Кортеж (англ. tuple), как и список хранит элементы, только в отличие от списка, элементы кортежа не изменяются. Кортеж задается круглыми скобками () :
Одноэлементный кортеж задается с помощью запятой после первого элемента. Без запятой получим список. Чтобы узнать какой тип данных мы получаем на выходе воспользуемся функцией type() :
Чтобы создать список из элементов кортежа применим функцию list() :
3.5. Словари
Получим по ключам соответствующие значения из словаря dictionary :
Чтобы добавить новую пару «ключ-значение» используем следующую запись словарь[‘новый_ключ’] = новое_значение :
Изменение существующего значения похоже на добавление нового значения словарь[‘существующий_ключ’] = новое_значение :
Командой del можно удалить ключ со значением:
3.6. Множества
Множества – неупорядоченные последовательности не повторяющихся элементов. Множество задается чрез фигурные скобки <> :
Операции над множествами:
3.7. Файлы
example.txt – путь к файлу и его имя. В нашем случае файл расположен в папке с выполняемой программой.
r – режим работы « только чтение».
Попробуем дозаписать числа в конец файла:
numbers – список чисел.
a – режим записи «в конец текстового файла».
\n – перенос на новую строчку.
Без переноса строки результат будет следующий:
4. Ввод данных
Для ввода данных применяется функция input() :
5. Условные инструкции
Оператор if выполняет код в зависимости от условия. Проверим, если число три меньше пяти, то выведем на экран слово true :
elif = else + if – код выполняется, если предыдущее условие ложно, а текущее истинно:
6. Цикл while
Напишем цикл, который 5 раз выведет на экран слово hello :
while – обозначение цикла.
Бесконечный цикл записывается с помощью while True :
7. Цикл for
Цикл for перебирает элементы последовательности:
Второй вариант записи:
8. Функции
a и b – аргументы функции.
return возвращает значение функции.
9. Модули
Модуль – файл, содержащий функции, классы и данные, которые можно использовать в других программах.
Это был импорт отдельной функции. Теперь импортируем весь модуль и обратимся к функции через модуль.имя_функции() :
10. Комментарии
Комментирование кода помогает объяснить логику работы программы. Однострочный комментарий начинается с хеш-символа # :
Многострочный комментарий заключается с обеих сторон в три кавычки:
Литература
Шпаргалки
YouTube-каналы и курсы
Бесплатные курсы на русском и английском языках в YouTube и на образовательных ресурсах:
Python в «Библиотеке Программиста»
Мы кратко познакомились с основными понятиями Python: команды, функции, операторы и типы данных. У этого языка низкий порог вхождения, простой синтаксис, поэтому вероятность освоить его человеку, который никогда не занимался программированием – высокая (по моей субъективной оценке – 90%).
На Python создают прикладные приложения, пишут тесты и бэкенд веб-приложений, автоматизируют задачи в системном администрировании, его используют в нейронных сетях и анализе больших данных. Язык можно изучить самостоятельно, но на это придется потратить немало времени. Если вы хотите быстро понять основы программирования на Python, обратите внимание на онлайн-курс «Библиотеки программиста». За 30 уроков (15 теоретических и 15 практических занятий) под руководством практикующих экспертов вы не только изучите основы синтаксиса, но и освоите две интегрированные среды разработки (PyCharm и Jupyter Notebook), работу со словарями, парсинг веб-страниц, создание ботов для Telegram и Instagram, тестирование кода и даже анализ данных. Чтобы процесс обучения стал более интересным и комфортным, студенты получат от нас обратную связь. Кураторы и преподаватели курса ответят на все вопросы по теме лекций и практических занятий.
Питон для начинающих с нуля: изучаем Python дома
Как выучить самому Python или любой другой язык программирования? Такой вопрос возникает у тех, кто впервые решил погрузиться в сферу IT.
Говорят, лучше всего покупать курсы, получать соответствующее образование. Конечно, погружаться в мир Python куда удобнее с помощью опытных учителей, но это не догма.
В нашем бесплатном гайде будет рассмотрен Питон для начинающих с нуля. Данный язык лучше всего подходит новичкам, так как прост в изучении и имеет огромную сферу применения. Вы можете стать как веб-разработчиком, так и инженером в области машинного обучения, софт-девелопером или игростроителем. Ограничений практически нет — все зависит лишь от предпочтений.
Где используется Python и почему
В последние 5 лет Питон непрерывно находится в тройке самых популярных языков программирования. У него есть ряд сильных сторон, которые привлекают разработчиков со всего мира.
К типичным областям использования Python относят:
Озвученный спектр направлений показывает, что Питон имеет определенные преимущества по сравнению с другими языками, раз он пригоден для такого широкого класса задач.
Основные показаны ниже (рис. 1).
Простота подразумевает легкость освоения и высокий уровень абстракции (минимум кода при максимальном эффекте).
Выразительность связана с минимальным количеством кода для достижения результата (некоторые особенности Питона сокращают объем кода чуть ли не до одной строки, если сравнивать с другими языками).
Скрипты на Python’e легко читать: нет лишних символов, нагромождения скобок, дополнительных уточнений.
Полнота демонстрирует масштаб встроенных и сторонних библиотек под специфичные нужды (не нужно с нуля создавать функционал, ведь его уже кто-то реализовал).
Немаловажно и то, что исходный код Python свободно распространяется. Любая редакция языка доступна каждому как для личных, так и коммерческих нужд.
Кроссплатформенность в дополнение ко всему гарантирует достижение идентичных результатов что на Windows, Linux, MacOS, так и на мобильных системах.
Python – объектно-ориентированный высокоуровневый интерпретируемый язык с динамической типизацией и автоматическим управлением памятью.
Объектность позволяет представлять сущности реального мира, что упрощает понимание. Высокоуровневость подразумевает наличие абстракций. Интерпретируемость позволяет исполнять программу на лету.
Динамическая типизация задает тип переменной в момент присваивания. Встроенное управление памятью избавляет от проблем с переполнением кеша и зависаний.
Отметим, также, ключевые плюсы и минуса Питона (таблица 1).
| Плюсы | Минусы |
| Легко изучать, писать и читать код | Относительно медленный |
| Интерпретируемый (исполняет код на лету) | Не всегда эффективно расходует память |
| Динамически типизированный | Ограничен в мобильной разработке |
| С открытым исходным кодом | При исполнении могут возникать ошибки, что требует тщательного тестирования |
| Имеет широкую поддержку |
Таблица 1 – Сильные и слабые стороны Python’a
Установка и подготовка среды
Чтобы начать программировать на Питоне, требуется совершить 2 шага:
В нашем бесплатном руководстве по Python мы будем пользоваться только этим функционалом. Его достаточно, чтобы самому дома с нуля разобраться в Питоне.
Python реализован Гвидо ван Россумом в 1991 году. Несколько раз Питон признавался языком года (даже в 2020 году). Сегодня он применяется не только в среде средних и мелких разработчиков, но и в таких мировых компаниях как Google, Instagram, Facebook. Название языка происходит не от змеи, как часто думают новички, а от британского шоу «Летающий цирк Монти Пайтона».
Теперь в папке проекта можно создать файл с расширением «.py», в котором и будет писаться код. Чтобы запустить скрипт, нажимаем либо зеленую кнопку «Run», либо выбираем ее же через правую кнопку мыши. Внизу PyCharm при этом откроется окно консоли, отражающее итог и ход работы программы.
Таким образом, схема работы достаточно проста: пишем код, запускаем его, смотрим в терминал результат.
Начало работы в Питоне
Первое, что делают при изучении любого языка программирования, – вывод в консоль популярного сообщения «Hello world». Немного поменяем вывод, и в пустом файле скрипта напишем следующую команду:
Print – встроенная в Python функция, которая выводит на печать переданное в нее сообщение. Запуск скрипта отобразит в терминале соответствующую фразу.
Еще одна полезная команда – input. Она позволяет как бы общаться с пользователем при помощи консоли. Исполним следующий код:
Функция input приостанавливает исполнение скрипта до тех пор, пока пользователь не введет свой ответ. Сначала в консоли потребуется представиться, а потом передать свой возраст. И лишь потом в терминале отобразится сообщение: «Рад знакомству!».
Пока что все наши операции не имели большого смысла и никак не использовались в других местах программы, но легкость Питона, уважаемые читатели, наверняка ощущается.
Обсудим базовый синтаксис языка Python:
Даже если вы и забудете о сказанном, PyCharm вам напомнит: он подчеркнет синтаксические ошибки, даст подсказки по используемым функциям. Это не просто удобно, но и экономит массу времени.
Каждый символ в коде Python является существенным.
Данная фраза от создателя языка свидетельствует о том, что Питон в своем синтаксисе максимально прозрачен.
Переменные в Python
Любой язык программирования оперирует переменными. Это некие значения, которым мы дали имена. Их можно использовать любое количество раз в коде.
Названия переменных в Python задаются при помощи змеиной нотации, «snake case» (кто бы сомневался). Они пишутся маленькими буквами, а составные (из нескольких слов) отделяются друг от друга нижним подчеркиванием. Важно давать им осмысленные имена (это существенно упростит ориентирование в коде через некоторое время).
Пример плохих или неверных наименований:
Реализуем простую задачу для новичков на Питоне, которая иногда встречается на собеседованиях!
Получим от пользователя следующие сведения: его имя и страну, в которой бы он хотел побывать. Выведем на печать сообщение: «Доброго дня, <ИМЯ>. <СТРАНА>– интересная страна!». А после этого продемонстрируем пользователю еще одну фразу: «Было приятно с вами поболтать, <ИМЯ>».
Данный проект показывает не только умение начинающего работать с базовыми возможностями языка, но и демонстрирует его умение пользоваться переменными.
Чтобы передать в функцию print переменную вместе с текстом, удобно пользоваться так называемыми f-строками. Синтаксис следующий: print(f’Вы передали переменную
Как видим, переменная может использоваться в разных участках кода после того, как ей присвоено значение.
Числа в Питоне и операции с ними
Далее поговорим о типах данных. Начнем с чисел. В этом курсе мы затронем два их типа: целые и числа с плавающей точкой. Из названия понятно, что они подразумевают. Есть и другие: комплексные, десятичные, дробные (в Питоне они различаются).
Когда мы присваиваем переменной число, то оно пишется без кавычек. Для числового типа данных доступны стандартные математические операции: умножение, сложение, возведение в степень, деление и деление по модулю, целочисленное деление и др.
Результат работы скрипта:
Мы создали 3 переменные: две в виде целых чисел и одну как число с плавающей точкой. При делении любых значений всегда получается число с плавающей точкой (даже если разделить 10 на 5, то получим 2.0).
Целочисленное деление обозначается как «//». Оно отбрасывает остаток. Деление по модулю подразумевает отображение только остатка и обозначается «%». Возведение в степень записывается двумя звездочками.
В Питоне есть функции, позволяющие взаимно преобразовывать числа, а также определять тип переменной.
Результат работы скрипта:
При помощи type мы убедились, что первое число – целое, а второе – с плавающей точкой. А две другие функции позволили преобразовать данные к нужному типу.
Строки (тип данных string)
Строка – еще один тип данных в языке Python. Они записываются в одинарных или двойных кавычках. В нашем бесплатном гайде рассмотрим следующие операции с ними:
Конкатенация подразумевает объединение строк. При помощи же знака умножения можно строку продублировать несколько раз.
Результат работы скрипта:
Операция «day += day» делает следующее: берет старую переменную, добавляет к ней некоторое значение (в нашем случае – ее же саму) и записывает полученный результат под тем же именем. Данная операция часто используется с числами (для умножения, сложение, деления и т.п.).
Строка является перебираемым (итерируемым) объектом. К каждому отдельному ее элементу можно получить доступ. Для этого используются индексы. Индекс первого элемента равен нулю (а остальные – по возрастанию). Можно пойти с конца: тогда последний элемент имеет индекс «-1», а оставшиеся – по убыванию.
Более того, с помощью индексов можно делать срезы: брать некоторую часть строки. Также, предусмотрен шаг среза (по умолчанию равен единице).
Например, нам требуется взять строку начиная с 3-го элемента и заканчивая 15-ым с шагом 2. Это значит следующее: делаем срез с 3-го элемента по 16-ый (он не включается), а из этого промежутка берем не каждый символ, а только четные.
Результат работы скрипта:
Так как к символам строки можно обращаться по индексу, то у нее есть некоторая длина. Узнать ее просто – применяем функцию len.
Результат работы скрипта:
Можете проверить сами, что в данной строке 26 символов (с учетом пробелов).
Булевы операции
Булев тип данных и операции сравнения используются в любом языке программирования. Здесь мы работаем с двумя значениями: истина (True) или ложь (False). Сравнение переменных осуществляется следующими операторами:
Результат работы скрипта:
С булевым типом данных тесно связаны логические операторы:
Проще всего понять их на основании следующей таблицы (табл. 2).
| Первое выражение | Второе выражение | AND | OR |
| True | True | True | True |
| True | False | False | True |
| False | True | False | True |
| False | False | False | False |
Таблица 2 – Логические операторы в Python
Условные выражения
Работа с логическими операторами и операциями напрямую связана с условными выражениями. Бывают ситуации, когда код программы начинает ветвиться в зависимости от предыдущего результата.
Например, на сайт заходит пользователь: если ему больше 18 лет, то ему показываются все темы, а если меньше – то только некоторые. Для таких случаев используется инструкция «if…elif…else». Она может состоять из 1, 2 или более вариантов ветвления.
Рассмотрим на практике.
Результат работы скрипта:
Отметим, что комментарии в Питоне предваряются решеткой (эта часть кода не будет исполняться). В примере нам потребовалось узнать возраст пользователя. Но мы хотим получить реальное число, поэтому ограничили рамки человеческого возраста от 1 до 139 лет.
Результат работы скрипта:
Пользователь по ошибке вместо возраста вписал свое имя, о чем его предупредили. В других случаях мы также постарались перехватить возможные несоответствия.
Списки, кортежи, множества и словари
Списки, кортежи, множества и словари – еще 4 типа данных в Питоне, включающие в себя несколько значений и являющиеся итерируемыми (перебираемыми, как строки).
Особенности показаны в таблице 3.
| Список (list) | Кортеж (tuple) | Множество (set) | Словарь (dict) |
| Изменяемый | Неизменяемый | Изменяемое | Изменяемый |
| Значения могут дублироваться | Значения могут дублироваться | Значения не могут дублироваться | Ключи не могут дублироваться |
| Доступ по индексу возможен | Доступ по индексу возможен | Доступ по индексу невозможен | Есть доступ к ключам и значениям |
Таблица 3 – Коллекции данных в Python
Список – последовательность произвольных элементов, разделенных запятой. Обозначается квадратными скобками. Можно доставать отдельные составляющие через индекс, добавить в начало списка или конец те или иные значения, удалить элементы, узнать длину, отсортировать.
Рассмотрим часть функционала.
Результат работы скрипта:
Когда необходимо запретить изменение коллекции, ее удобно представлять в виде кортежа. Более того, он занимает меньшее количество в памяти. Записывается в круглых скобках.
На их основании также возможны срезы, доступ по индексу, нахождение максимума или минимума (если элементы представлены числами), поиск количества вхождений значений.
Результат работы скрипта:
Множества хороши в ситуациях, когда нужна гарантия уникальности всех элементов. Задаются фигурными скобками. При добавлении дубликата размер сета никак не меняется. Важно и то, что порядок объектов внутри множества не гарантирован, что исключает доступ по индексу.
Результат работы скрипта:
Словарь – особый тип коллекций. Все его элементы состоят из пар «ключ: значение». Ключ должен быть уникальным, а значения могут повторяться. Обозначается фигурными скобками.
Рассмотрим некоторые операции со словарями.
Результат работы скрипта:
Таким образом, в зависимости от ситуации применяется тот или иной тип коллекций. Чаще всего это списки и словари.
Циклы for, while в Питоне
Выше упоминалось, что ряд объектов Питона является итерируемым. Это значит, что элементы этой сущности можно перебирать. Для этого в том числе нужны циклы (особенно for).
Конструкция цикла for представлена следующим образом:
Другими словами, мы можем проходиться по каждому элементу последовательности либо напрямую, либо при помощи функции range и индексов.
Для понимания рассмотрим примеры.
Результат работы скрипта:
При помощи цикла for мы вывели на печать все имеющиеся в списке планеты. Такого же результата можно добиться через индексы (на основании длины списка). Функция range генерирует целые числа в заданном диапазоне. Так как всего у нас 5 планет, то в нее можно передать параметр 5. С другой стороны, для этого также подойдет длина списка.
Результат работы скрипта (нижеследующее выведется 2 раза):
Цикл while требует условие выхода, так как в противном случае может выполняться бесконечно. Хоть может и показаться, что эта бесконечность не нужна, в ряде случаев без нее никак: например, показывать окно программы до тех пор, пока пользователь ее не закрыл.
Реализуем следующую задумку: выведем все числа от 50 до 100 включительно, которые делятся на 7, но не делятся на 2.
Результат работы скрипта:
Всего таких числа 3. Важно не забыть на каждой итерации увеличивать исходное число, иначе оно никогда не станет равным 100.
Функции
Очень часто встречается, что один и тот же кусок кода необходимо использовать в разных местах. Дублирование – плохая практика, ведущая к ошибкам и сложностям изменений. В таких ситуациях на помощь приходят функции.
Чтобы создать функцию, перед ее именем следует написать ключевое слово def, а также обозначить параметры, если таковые есть. Выше мы уже встречали некоторые из них, которые встроены в Python (sum, print, input).
Ничто не мешает создать свои. Важно учесть и то, что функция всегда что-то возвращает (после ключевого слова return), хоть return и не обязателен (тогда вернется None, т.е. «ничто»).
Структура функции следующая:
Создадим функцию, которая в зависимости от возраста пользователя будет выводить его статус. Если ему меньше 10 лет – то вернем сообщение «Ребенок», если от 10 до 16 – «Подросток», если от 16 до 20 – «Юноша», если от 20 до 35 – «Молодой человек», если от 35 до 45 – «Мужчина», если от 45 до 55 – «Солидный мужчина», если от 55 до 70 – «Зрелый ум», если от 70 до 120 – «Познавший смыслы». В любом другом случае предупредим пользователя: «Такого возраста не бывает».
Результат работы скрипта:
Теперь в нашей программе можно использовать данную функцию множество раз с разными аргументами.
Модули, библиотеки, import
Язык Python хорош тем, что в него встроено большое количество модулей и библиотек по умолчанию. Более того, их можно дополнительно установить из официального репозитория при помощи команды «pip install название_модуля» в терминале проекта.
Модули (один файл) и библиотеки (несколько файлов с обязательным наличием документа __init__.py) расширяют возможности программистов и упрощают работу. Не нужно создавать велосипед заново, так как его уже кто-то сделал ранее для вас. Нужно лишь им воспользоваться, чтобы добраться из точки А в точку Б.
В нашем коротком курсе мы рассмотрим абсолютный импорт и все его варианты. Имеется и относительный, но он понадобится позже, когда вы начнете разрабатывать сложные проекты.
Итак, в стандартном наборе модулей имеется random, используемый для работы со случайными числами и генерацией оных, выборкой рандомных значений и т.п. Дополнительных установок не потребуется.
Перечислим все способы абсолютного импортирования в Питоне:
Общий импорт
Результат работы скрипта:
Сначала указываем модуль, а потом функцию через точку.
Импорт всех объектов (не рекомендуется, но не запрещен)
Результат работы скрипта:
Модуль указывать не требуется.
Импорт конкретной функции
Результат работы скрипта:
Модуль указывать не надо, но остальные его функции и переменные недоступны.
Импорт функции с переименованием
Результат работы скрипта:
Импорт модуля с переименованием
Результат работы скрипта:
Работа с файлами
После закрытия программы или по окончании работы скрипта все данные, которые мы получили, исчезают. Иногда, впрочем, нам нужно, чтобы они куда-то сохранились. Python предоставляет возможности для работы с файлами, как для их чтения, так и записи.
Попробуем сгенерировать 10 случайных целых чисел от 1 до 100 и записать их в текстовый файл «random.txt», а затем выведем их на печать в консоль из этого документа.
Нам понадобится контекстный менеджер with и функция open, а также знакомая функция print, которая умеет заносить данные в файл.
Познакомимся с двумя режимами работы open: «r» — чтение, «w» – запись.
Итак, контекстный менеджер with автоматически закрывает файл после своей работы (чтобы он не оставался в памяти).
В функцию open хорошей практикой считается не только передача названия файла и режима работы, но и кодировки (чтобы при записи букв российского алфавита, например, мы не получили кракозябры).
Функция print может принимать дополнительный аргумент file, в котором указывается файл на запись.
Метод readlines считывает содержимое документа и формирует из его строк список, по которому мы проходимся. Так как в текстовом файле у нас есть переносы (они появились благодаря функции print, которая при каждом вызове начинает вывод с новой строки), их удобнее удалить с помощью метода strip, примененного к каждой строке.
Изучаем Python: куда дальше?
Чтобы быстро усвоить азы Питона, предоставленного в уроке материала достаточно. Конечно, этого мало, дабы стать специалистом. Поэтому придется самостоятельно дома или при помощи дополнительных курсов углублять знания. Выбор за вами, но некоторые рекомендации мы дадим.
Какие темы освоить в первую очередь? Приводим список тем и команд для новичков:
В дополнительных источниках ниже приведен перечень книг и сайтов, которые помогут вам в дальнейшем развитии. Если будут трудности, можно вообще начинать с литературы, где в заголовках встречаются фразы «для детей», «для школьников», «для чайников».
Потом стоит переходить к серьезным трудам (типа М. Лутца), ознакомлению с популярными фреймворками и библиотеками (Django, flask, pandas).











