|
Типы данных.
Переменные. Урок 4 курса «Python. Введение в программирование»Данные и их типы
В реальной жизни мы совершаем различные действия над окружающими нас предметами, или объектами. Мы меняем их свойства, наделяем новыми функциями. По аналогии с этим компьютерные программы также управляют объектами, только виртуальными, цифровыми. Пока не дойдем до уровня объектно-ориентированного программирования, будем называть такие объекты данными.
Очевидно, данные бывают разными. Часто компьютерной программе приходится работать с числами и строками. Так на прошлом уроке мы работали с числами, выполняя над ними арифметические операции. Операция сложения выполняла изменение первого числа на величину второго, а умножение увеличивало одно число в количество раз, соответствующее второму.
Числа в свою очередь также бывают разными: целыми, вещественными, могут иметь огромное значение или очень длинную дробную часть.
При знакомстве с языком программирования Python мы столкнемся с тремя типами данных:
целые числа (тип
int
) – положительные и отрицательные целые числа, а также 0 (например, 4, 687, -45, 0).числа с плавающей точкой (тип
float
) – дробные, они же вещественные, числа (например, 1.45, -3.789654, 0.00453). Примечание: для разделения целой и дробной частей здесь используется точка, а не запятая.строки (тип
str
) — набор символов, заключенных в кавычки (например, «ball», «What is your name?», ‘dkfjUUv’, ‘6589’). Примечание: кавычки в Python могут быть одинарными или двойными; одиночный символ в кавычках также является строкой, отдельного символьного типа в Питоне нет.
Операции в программировании
Операция – это выполнение каких-либо действий над данными, которые в данном случае именуют операндами. Само действие выполняет оператор – специальный инструмент. Если бы вы выполняли операцию постройки стола, то вашими операндами были бы доска и гвоздь, а оператором – молоток.
Так в математике и программировании символ плюса является оператором операции сложения по отношению к числам. В случае строк этот же оператор выполняет операцию конкатенации, то есть соединения.
>>> 10.25 + 98.36 108.61 >>> 'Hello' + 'World' 'HelloWorld'
Здесь следует для себя отметить, что то, что делает оператор в операции, зависит не только от него, но и от типов данных, которыми он оперирует. Молоток в случае нападения на вас крокодила перестанет играть роль строительного инструмента. Однако в большинстве случаев операторы не универсальны. Например, знак плюса неприменим, если операндами являются, с одной стороны, число, а с другой – строка.
>>> 1 + 'a' Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str'
Здесь в строке TypeError: unsupported operand type(s) for +: 'int' and 'str'
интерпретатор сообщает, что произошла ошибка типа – неподдерживаемый операнд для типов int
и str
.
Изменение типов данных
Приведенную выше операцию все-таки можно выполнить, если превратить число 1 в строку «1». Для изменения одних типов данных в другие в языке Python предусмотрен ряд встроенных в него функций (что такое функция в принципе, вы узнаете в других уроках). Поскольку мы пока работаем только с тремя типами (
, float
и str
), рассмотрим вызовы соответствующих им функций – int()
, float()
, str()
.
>>> str(1) + 'a' '1a' >>> int('3') + 4 7 >>> float('3.2') + int('2') 5.2 >>> str(4) + str(1.2) '41.2'
Эти функции преобразуют то, что помещается в их скобки соответственно в целое число, вещественное число или строку. Однако преобразовать можно не все:
>>> int('hi') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for int() with base 10: 'hi'
Здесь возникла ошибка значения (ValueError
), так как передан литерал (в данном случае строка с буквенными символами), который нельзя преобразовать к числу с основанием 10.
int
не такая простая:>>> int('101', 2) 5 >>> int('F', 16) 15
Если вы знаете о различных системах счисления, то поймете, что здесь произошло.
Обратим внимание еще на одно. Данные могут называться значениями, а также литералами. Эти три понятия («данные», «значение», «литерал») не обозначают одно и то же, но близки и нередко употребляются как синонимы. Чтобы понять различие между ними, места их употребления, надо изучить программирование глубже.
Переменные
Данные хранятся в ячейках памяти компьютера. Когда мы вводим число, оно помещается в какую-то ячейку памяти. Но как потом узнать, куда именно? Как впоследствии обращаться к этим данными? Нужно как-то запомнить, пометить соответствующую ячейку.
Раньше, при написании программ на машинном языке, обращение к ячейкам памяти осуществляли с помощью указания их регистров, то есть конкретно сообщали, куда положить данные и откуда их взять. Однако с появлением ассемблеров при обращении к данным стали использовать словесные переменные, что куда удобней для человека.
Механизм связи между переменными и данными может различаться в зависимости от языка программирования и типов данных. Пока достаточно запомнить, что в программе данные связываются с каким-либо именем и в дальнейшем обращение к ним возможно по этому имени-переменной.
Слово «переменная» обозначает, что сущность может меняться, она непостоянна. Действительно, вы увидите это в дальнейшем, одна и та же переменная может быть связана сначала с одними данными, а потом – с другими. То есть ее значение может меняться, она переменчива.
В программе на языке Python, как и на большинстве других языков, связь между данными и переменными устанавливается с помощью знака =
. Такая операция называется присваивание (также говорят «присвоение»). Например, выражение sq = 4
означает, что на объект, представляющий собой число 4, находящееся в определенной области памяти, теперь ссылается переменная sq, и обращаться к этому объекту следует по имени sq.
Имена переменных могут быть любыми. Однако есть несколько общих правил их написания:
Желательно давать переменным осмысленные имена, говорящие о назначении данных, на которые они ссылаются.
Имя переменной не должно совпадать с командами языка (зарезервированными ключевыми словами).
Имя переменной должно начинаться с буквы или символа подчеркивания (_), но не с цифры.
Имя переменной не должно содержать пробелы.
Чтобы узнать значение, на которое ссылается переменная, находясь в режиме интерпретатора, достаточно ее вызвать, то есть написать имя и нажать Enter.
>>> sq = 4 >>> sq 4
Вот более сложный пример работы с переменными в интерактивном режиме:
>>> apples = 100 >>> eat_day = 5 >>> day = 7 >>> apples = apples - eat_day * day >>> apples 65
Здесь фигурируют три переменные: apples, eat_day и day. Каждой из них присваивается свое значение. Выражение apples = apples - eat_day * day
сложное. Сначала выполняется подвыражение, стоящее справа от знака равенства. После этого его результат присваивается переменной apples, в результате чего ее старое значение (100) теряется. В подвыражении apples - eat_day * day
вместо имен переменных на самом деле используются их значения, то есть числа 100, 5 и 7.
Практическая работа
Переменной var_int присвойте значение 10, var_float — значение 8.4, var_str — «No».
Значение, хранимое в переменной var_int, увеличьте в 3.5 раза. Полученный результат свяжите с переменной var_big.
Измените значение, хранимое в переменной var_float, уменьшив его на единицу, результат свяжите с той же переменной.
Разделите var_int на var_float, а затем var_big на var_float. Результат данных выражений не привязывайте ни к каким переменным.
Измените значение переменной var_str на «NoNoYesYesYes». При формировании нового значения используйте операции конкатенации (
+
) и повторения строки (*
).Выведите значения всех переменных.
Примеры решения и дополнительные уроки в pdf-версии и android-приложении курса
Работа с переменными и обозначение % — Power Automate
Редактировать
Твиттер LinkedIn Фейсбук Электронная почта
- Статья
- 3 минуты на чтение
Переменные используются в потоках для хранения данных для дальнейшей обработки. Каждое имя переменной должно быть заключено в знак процента ( % ). Знак процента используется как специальный символ для обозначения переменных. Любое выражение между знаками процента должно быть оценено.
Иногда знак процента следует использовать как простой символ, а не для обозначения вычисления. В этих случаях его следует экранировать, используя другой символ процента (%%).
Power Automate позволяет создавать сложные выражения, содержащие жестко закодированные значения, имена переменных, арифметические и логические операции, сравнения и скобки.
Жестко запрограммированные значения
Чтобы включить в переменную жестко закодированное текстовое значение, используйте кавычки. Каждое значение между символами кавычек будет рассматриваться как текстовое значение, а не как имя переменной.
Имена переменных
Переменные можно использовать, добавляя их имена к выражению без каких-либо дополнительных обозначений.
Основные арифметические операции
Для выполнения математических операций используйте все основные арифметические операторы, такие как сложение ( + ), вычитание ( — ), умножение ( * ) и деление (/).
Арифметические операции в основном используются с числовыми значениями и переменными. Однако вы также можете использовать оператор сложения для объединения строк. Добавление чисел и текстовых строк в одно и то же выражение преобразует числа в текст и объединяет их с другими текстовыми строками.
Выражение | Результат | Тип переменной результата |
---|---|---|
%5 * 3% | 15 | Номер |
%4 / Вар% | 4 разделить на значение переменной с именем «Var» | Номер |
%’это’ + ‘текст’% | это текст | Текст |
%’Это число’ + 5% | Это номер 5 | Текст |
Сравнения
Помимо арифметических операторов, сравнивайте с помощью следующих операторов
Оператор | Описание |
---|---|
=, <> | Равно/не равно |
<, <= | Меньше/меньше или равно |
>, >= | Больше/больше или равно |
Имейте в виду, что сравнения при оценке дают либо True , либо False в качестве значения. Естественно, сравнивать можно только значения одного типа.
Логические операторы
Логические операторы также можно использовать для одновременной проверки нескольких условий, что позволяет реализовать более сложную логику в одном выражении. Поддерживаемые операторы: И, ИЛИ и НЕ.
Выражение | Результат |
---|---|
%Индекс = 1 ИЛИ Индекс = 2% | Истинно, если значение переменной Index равно 1 ИЛИ 2, в противном случае — Ложь. |
%Индекс = 4 И Текст = «Четыре»% | Истинно, если значение переменной Index равно 4 И значение переменной Text равно Four, в противном случае — False. |
%НЕ(4 <> 4)% | Меняет логическое значение в скобках на противоположное. В этом примере он возвращает True. |
Кроме того, вы можете использовать следующие логические выражения для проверки значения строки или переменной.
Выражение | Аргументы | Описание |
---|---|---|
%StartsWith(arg1,arg2,arg3)% | arg1 : Текст для поиска arg2 : Текст для поиска arg3 : Игнорировать регистр (Истина/Ложь) | Истинно, если предоставленная строка начинается с указанного значения, в противном случае — Ложь. |
%NotStartsWith(arg1,arg2,arg3)% | arg1 : Текст для поиска arg2 : Текст для поиска arg3 : Игнорировать регистр (Истина/Ложь) | Истинно, если предоставленная строка не начинается с указанного значения, в противном случае — Ложь. |
%EndsWith(arg1,arg2,arg3)% | arg1 : Текст для поиска arg2 : Текст для поиска arg3 : Игнорировать регистр (Истина/Ложь) | Истинно, если предоставленная строка заканчивается указанным значением, в противном случае — Ложь. |
%NotEndsWith(arg1,arg2,arg3)% | arg1 : Текст для поиска в arg2 : Текст для поиска arg3 : Игнорировать регистр (Истина/Ложь) | Истинно, если предоставленная строка не заканчивается указанным значением, в противном случае — Ложь. |
%Содержит(arg1,arg2,arg3)% | arg1 : Текст для поиска arg2 : Текст для поиска arg3 : Игнорировать регистр (Истина/Ложь) | Истинно, если предоставленная строка содержит указанное значение, в противном случае — Ложь. |
%NotContains(arg1,arg2,arg3)% | arg1 : Текст для поиска arg2 : Текст для поиска arg3 : Игнорировать регистр (Истина/Ложь) | Истинно, если предоставленная строка не содержит указанного значения, в противном случае — Ложь. |
%IsEmpty(arg1)% | arg1 : Текст для проверки | Истинно, если предоставленная строка не содержит символов, в противном случае — Ложь. |
%IsNotEmpty(arg1)% | arg1 : Текст для проверки | Истинно, если предоставленная строка содержит один или несколько символов, в противном случае — Ложь. |
Скобки
Чтобы изменить приоритет операторов, используйте скобки. Скобки обрабатываются так же, как в алгебре и языках программирования.
Обратная связь
Просмотреть все отзывы о странице
NumberNut.com: преалгебра: переменные
Числа и счет|Арифметика|Дроби и десятичные дроби| Преалгебра |Карта сайта
Есть выражения, а есть уравнения. Выражения — это математические операторы без знака равенства. 2+2 — это выражение. 2+2=4 это уравнение. Запомните это таким образом. Уравнение показывает равенство.
Выражения:
4 + 8
5 — (-12)
4 * 8
16 ÷ 4
Уравнения:
4 + 8 = 12
5 — (-12) = -7
4 * 8 = 32
16 ÷ 4 = 4
Иногда выражение не имеет двух чисел. Иногда вы увидите букву или символ. Эти буквы или символы могут представлять любое число во Вселенной, и они называются переменными. Обычно вас просят решить значение переменной, когда вам дают математические задачи.
Примеры:
4 + a
5 — n
4 * #
16 ÷ ρ
Вы уже привыкли решать задачи, на которые не знаете ответа. Когда есть переменные, ответ просто смешался с уравнением. Простое уравнение будет выглядеть так.
3 + 8 = п
11 = n (Вы можете это сделать.)
Мы просто меняем местами, когда думаем об уравнениях с переменными.
3 + n = 11
n = 8
Когда вы работаете с переменными в выражениях, они могут означать что угодно. Когда вы помещаете их в уравнение, они обычно имеют определенные значения. Если мы зададим выражение 2+x, оно на самом деле ничего не значит. ‘x’ может равняться 5 или 5 миллионам. Но если мы составим уравнение 2+x=6, тогда будет только одно значение для ‘x’. Мы можем решить это таким образом.
2 + x = 4
(-2) + 2 + x = (-2) + 4 (вы можете добавить значение к обеим частям уравнения)
0 + x = 2 (любое число, добавленное к противоположному, равно равен нулю)
x = 2 (число, добавленное к нулю, равно исходному числу)
В приведенном выше примере показано, как можно «обнулить» одну часть уравнения, чтобы вычислить значение переменной («x»). Еще один.
5 * n = 25
n * 5 = 25 (некоторые математические правила позволяют перемещать значения в уравнении)
(n * 5) ÷ 5 = 25 ÷ 5 (вы можете разделить обе части уравнения на одно и то же значение)
n * (5 ÷ 5) = 25 ÷ 5 (при использовании умножения и деления можно перегруппировать значения)
n * 1 = 5 (число, деленное само на себя, равно единице)
n = 5 (любое значение, умноженное на один равен этому значению)
Вероятно, последнее вы могли бы сделать в уме. «Пять, умноженное на какое число, равно двадцати пяти?»
Мы еще поработаем с переменными, но сейчас вам нужно запомнить, что переменная представляет неизвестное значение. Большинство ваших математических задач попросят вас решить эти неизвестные значения.
Мы начинаем использовать некоторые правила в наших примерах. По мере изучения алгебры вы узнаете об этих специальных правилах, управляющих уравнениями. Если мы покажем вам, как они используются сейчас, вы не будете бояться, когда начнете изучать доказательства. Вы наверняка знаете все правила, их названия вам еще никто не назвал.
Примеры:
1 + 0 = 1 -> Когда вы добавляете ноль к числу, число не меняется.
5 * 1 = 5 -> Когда вы умножаете число на единицу, число не меняется.
Видишь? Вы знаете это.
► СЛЕДУЮЩАЯ СТРАНИЦА НА PREALGEBRA
► СЛЕДУЮЩАЯ ОСТАНОВКА ТУРА ПО САЙТУ
► ВЕРНУТЬСЯ НА НАЧАЛО СТРАНИЦЫ
► Или выполните поиск по сайтам.