Новости

08.12.2020

Книга «Простой Python. Современный стиль программирования. 2-е изд.»

Вы начнете с основ Python и его стандартной библиотеки. Узнаете, как находить, загружать, устанавливать и использовать сторонние пакеты. Изучите лучшие практики тестирования, отладки, повторного использования кода и получите полезные советы по разработке. Примеры кода и упражнения помогут в создании приложений для различных целей.

Что изменилось? — Абсолютно новые 100 страниц (там есть котики). — Глав стало большое, но они стали короче. — Появилась глава, посвященная типам данных, переменным и именам. — Добавился рассказ о новых возможностях Python, таких как f-строки. — Обновилась информация о сторонних библиотеках. — Новые примеры кода. — Дан обзор библиотеки asyncio. — Рассмотрен новый стек технологий: контейнеры, облачные технологии, data science и машинное обучение. Что осталось неизменным? — Примеры c утками и плохими стихотворениями. Они навечно с нами.

Версии Python


Языки программирования со временем изменяются — разработчики добавляют в них новые возможности и исправляют ошибки. Примеры этой книги написаны и протестированы для версии Python 3.7. Версия 3.7 является наиболее современной на момент выхода этой книги, и о самых значимых нововведениях я расскажу. Версия 3.8 вышла в конце 2019 года — я рассмотрю самую ожидаемую функциональность(оригинальное издание выпущено до выхода версии 3.8; текущая версия — 3.8.2) Узнать, что и когда было добавлено в язык программирования Python, можно, посетив страницу docs.python.org/3/whatsnew: там представлена техническая информация. Она, скорее всего, покажется трудной для понимания, если вы только начинаете изучать Python, но может пригодиться в будущем, если вам нужно будет писать программы для компьютеров, на которых установлены другие версии Python.

Изменчивость

Изменчивость одна лишь неизменна.
Перси Шелли

Тип также определяет, можно ли значение, которое хранится в ящике, изменить — тогда это будет изменяемое значение, или оно константно — неизменяемое значение. Неизменяемый объект как будто находится в закрытом ящике с прозрачными стенками (см. рис. 2.1): увидеть значение вы можете, но не в силах его изменить. По той же аналогии изменяемый объект похож на коробку с крышкой: вы можете не только увидеть хранящееся там значение, но и изменить его, не изменив его тип.

Python является строго типизированным языком, а это означает, что тип объекта не изменяется, даже если его значение изменяемо (рис. 2.2).

Значения-литералы


Существует два вида определения данных в Python:

  • как литералы;
  • как переменные.


В следующих главах вы увидите, как указываются значения-литералы для разных типов данных — целые числа представляют собой последовательность цифр, дробные числа содержат десятичную точку, текстовые строки заключаются в кавычки и т. д. Но в примерах этой главы — чтобы избежать излишней сложности — мы будем использовать лишь короткие целые числа из десятичной системы счисления и один-два списка. Десятичные целые числа такие же, как числа в математике: они представляют собой последовательность цифр от 0 до 9. В главе 3 мы рассмотрим дополнительные детали работы с целыми числами (например, знаки и недесятичные системы счисления).

Переменные


Вот мы и добрались до ключевого понятия языков программирования.

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

Имена переменных в Python отвечают определенным правилам.

  • Они могут содержать только следующие символы:

    • буквы в нижнем регистре (от a до z);
    • буквы в верхнем регистре (от A до Z);
    • цифры (от 0 до 9);
    • нижнее подчеркивание (_).
  • Они чувствительны к регистру: thing, Thing и THING — это разные имена.
  • Они должны начинаться с буквы или нижнего подчеркивания, но не с цифры.
  • Python особо обрабатывает имена, которые начинаются с нижнего подчеркивания (об этом вы сможете прочитать в главе 9).
  • Они не могут совпадать с зарезервированными словами Python (их также называют ключевыми).


Перед вами список зарезервированных слов:

Внутри программы Python увидеть список зарезервированных слов можно с помощью команд:

или:

Корректными являются такие имена:

  • a;
  • a1;
  • a_b_c___95;
  • _abc;
  • _1a.


А следующие имена некорректны:

  • 1;
  • 1a;
  • 1_;
  • name!;
  • another-name.

 

Присваивание


В Python символ = применяется для присваивания значения переменной.

В школе нас учили, что символ = означает «равно». Почему же во многих языках программирования, включая Python, этот символ используется для обозначения присваивания? Одна из причин — на стандартной клавиатуре отсутствуют логические альтернативы вроде стрелки влево, а символ = не слишком сбивает с толку. Кроме того, в компьютерных программах присваивание используется чаще, чем проверка на равенство.

Программы непохожи на алгебру. В школе мы имели дело с подобными уравнениями:
y = x + 12

Решить уравнение можно, подставив значение для x. Если вы зададите для x значение 5, то, поскольку 5 + 12 равно 17, значение y будет равно 17. Подставьте значение 6, и y будет равен 18. И так далее.

Строки компьютерной программы могут выглядеть как уравнения, но означают они при этом нечто иное. В Python и других компьютерных языках x и y являются переменными. Python знает, что цифра или простая последовательность цифр вроде 12 или 5 является числовым литералом. Рассмотрим небольшую программу на Python, которая схожа с этим уравнением, — она выводит на экран значение y:

Здесь мы видим большое различие между математикой и программами: в математике знак = означает равенство обеих сторон, а в программировании он означаетприсваивание: переменной слева мы присваиваем значение с правой стороны.

В программировании также принято, что все находящееся справа от знака = должно иметь значение (это называется инициализацией). Справа вы можете увидеть значение-литерал, переменную, которой было присвоено значение, или их комбинацию. Python знает, что 5 и 12 — это числовые литералы. В первой строке целочисленное значение 5 присваивается переменной х. Теперь мы можем использовать переменную х в следующей строке. Когда Python читает выражение y = x + 12, он делает следующее:

  • видит знак = в середине;
  • понимает, что это оператор присваивания;
  • вычисляет значение с правой стороны (получает значение объекта, на который ссылается переменная х, и добавляет его к 12);
  • присваивает этот результат переменной слева — y.


Теперь, введя имя у в интерактивном интерпретаторе, можно увидеть его новое значение.

Если вы начнете программу со строки y = x + 12, Python сгенерирует исключение (ошибку), поскольку переменная х еще не имеет значения:

Более подробно об исключениях можно прочитать в главе 9. На компьютерном языке мы скажем, что переменная х не была инициализирована.

В алгебре вы могли бы сделать все наоборот — присвоить значение у, чтобы подсчитать значение х. Для того, чтобы сделать это в Python, вам нужно получить значения-литералы и инициализированные переменные с правой стороны оператора присваивания до того, как присвоить значение переменной х:

С полным содержанием статьи можно ознакомиться на сайте "Хабрахабр":

https://habr.com/ru/company/piter/blog/528880/

 


Комментарии: 0

Пока нет комментариев


Оставить комментарий






CAPTCHAОбновить изображение

Наберите текст, изображённый на картинке

Все поля обязательны к заполнению.

Перед публикацией комментарии проходят модерацию.