Предыдущая статья:
По большому счёту, с ц е н а р и й (скрипт, программа) состоит из данных и операций с ними. Но столь аскетичное заявление мало информативно, поэтому «размажем кашу по тарелке» 😊.
А каша заварилась нешуточная… Я тут даже табличку накидал – столкнул, так сказать, лбами двух мэтров программирования:
Должен признаться, нам сейчас "что в лоб, что по лбу" – ни та, ни эта часть таблицы толком не воспринимаются: понятно только, что они противоречивы.
Поэтому, как говорил Владимир Ульянов, в последствии Ленин: «Мы пойдём другим путём!» 😊
Не нравится «План "Б"» Вождя Революции?! Хм… Ладно. Тогда мы пойдём
с в о и м путём.
Очень коротко познакомимся с теми составляющими языка, которые, как мне видится, лягут в основу всего остального. Это:
- - данные и их типы
- - выражения и операторы
- - переменные
- - функции
Несомненно, не получится игнорировать и правила написания сценариев: так называемый синтаксис языка, строки, комментарии. Но это уже во второй части курса, ладно?
Конечно, есть ещё такие важные понятия, как объекты и классы, инструкции и методы, атрибуты, параметры и аргументы, токены, интересные вещи вроде модификаторов и аннотаций… Модули, пакеты, библиотеки, фреймворки… Бр-р-р… Но к ним подберёмся так, чтобы они были нативны к пройденному и понятому.
В той или иной степени, в нужное (с моей точки зрения 😊) время и в нужном (с моей точки зрения 😊) месте я коснусь значений этих терминов. Надеюсь. 😊 Или не коснусь. Тогда, как говорила Масяня, героиня очаровательного флеш-мультсериала Олега Куваева, «ну, ты уж как-нибудь так…» 😊
Данные и их типы
Как уже говорилось, чтобы что-то делать, компьютеру прежде всего нужны данные: цифры, числа, буквы, слова и целые предложения, картинки, аудио и видео, сигналы от периферийных устройств и сообщения от других программ…
Для удобства работы все данные Python разделяет по их типу. Например, числа – это одно, текстовая информация – другое… Для чего? Данные разных типов по-разному хранятся, разные типы предусматривают разные возможности манипуляций данными.
Последнюю мысль поясню такой аналогией. Листы металла (условный тип – «Металл») можно соединить сваркой, их не сколачивают гвоздями. Деревянные изделия (условный тип – «Дерево») – наоборот. Однако, при желании, и то, и другое можно распилить ножовкой или склеить.
Например, данные целочисленного типа складываются, вычитаются, умножаются и т.п.:
>>> 2 + 2
>>> 8 / 4
Данные строкового типа тоже можно складывать:
>>> "Привет," + " Новичок!"
Даже вполне допустимо «строку» умножить на «целое число»:
>>> "Привет, Новичок!" * 2
Но вычесть одно из другого, разделить или умножить не получится.
Не получится и к строковому типу прибавить (вычесть, разделить и т.п.) числовой, например:
>>> "Привет, Новичок!" + 2
Последняя команда возвращает TypeError: "Ошибка типа: с типом «str» (строка) можно объединять только тип «str» (не "int" (число)).
Возьмите на заметку: Python достаточно точно и внятно указывает на ошибки и их причины!
Консоль с командной строкой Python открыта? Пробуйте, пробуйте! 😊
Мы ещё поговорим о различных типах данных немножко подробнее во второй части, а пока примем их просто как понятие, как один из основных компонентов языка.
ПИШИТЕ КАК МОЖНО БОЛЬШЕ КОДА!
Выражения и операторы
Данные – это хорошо. Манипуляции с данными – ещё лучше! Манипуляции – это ого-го! Это уже похоже на компьютерную программу!
Выражения
Свои первые выражения мы с вами начали употреблять писать ручкой в ученических тетрадках и мелом на доске, когда осваивали арифметику (нет?! стилусом и на интерактивной?).
В Python выражения строятся по тому же принципу.
Однако понятие «в ы р а ж е н и е» в высокоуровневом языке программирования несколько шире – это любой фрагмент программного кода, который при выполнении даёт какой-то результат (отсутствие результата – тоже результат 😊):
a = 7 -- присваивает
print('Hello, World!') -- выводит
x > y -- сравнивает
Все примеры кода из предыдущего урока - тоже выражения.
Операторы
Тем, что именно будут выполнять фрагменты кода, управляют о п е р а т о р ы.
Оператор - это команда в виде символа или слова, запускающая некий функционал, производящий какие-либо действия.
Операторы представлены с п е ц и а л ь н ы м и с и м в о л а м и («+» для сложения, «*» для умножения, «>=» для сравнения «больше или равно», «=» для присваивания и др.) и «с п е ц и а л ь н ы м и», з а р е з е р в и р о в а н н ы м и в Python, с л о в а м и, (такими, как, «and» (логическое «И»), «or» (логическое «ИЛИ»), «is» (тождественность), «if» (если)…)
Сами данные, с которыми производятся какие-то действия с помощью операторов, называются о п е р а н д ы.
Пример простого выражения: "Привет, Новичок!" * 2, где строка «"Привет, Новичок!"» и число «2» - операнды, а знак умножения («*») – оператор.
Ну, к выражениям и операторам тоже ещё вернёмся, а пока…
Ужас, как хочется уже пошкодить!
Pourquoi pas? 😊 Балуемся! 😊
>>> (2 + 2) – 1
3
>>> 'Ля ' * 3
'Ля Ля Ля '
>>> 7 / 2
3.5
>>> 3*(2+2)/6
2.0
>>> 5 > 3
True («Истина»)
>>> "Привет," + " Новичок!"
'Привет, Новичок!'
СТАРАЙТЕСЬ ПИСАТЬ БОЛЬШЕ КОДА!
Последующая статья: