Тема урока: работа с целыми числами
- Целочисленный тип данных
- Преобразование строки к целому числу
- Операции над целыми числами
- Частые ошибки
- Решение задач
Аннотация. Урок посвящен изучению работы с целыми числами. Изучим основные операции, а также научимся преобразовывать строки в числа.
Целые числа
Все предыдущие программы, которые мы писали, работали со строковыми данными. Действительно, команда input()
считывает строку текста. Однако во многих случаях нам нужно работать именно с числами. Чтобы в Python создать переменную целого типа данных, нужно опустить кавычки при объявлении переменной. Рассмотрим следующий код:
num1 = 7
num2 = 10
num3 = num1 + num2
print(num3)
В результате выполнения такой программы будет выведено число 17
.
Запомни: числа обозначаются без кавычек, а строки — с кавычками.
Основные операции с числами
В языке Python, как и в математике, над числами можно совершать 4 основные операции (+
, -
, *
, /
).
Оператор |
Описание |
+ |
сложение |
- |
вычитание |
* |
умножение |
/ |
деление |
Приведённый ниже код:
a = 3
b = 2
print(a + b)
print(a - b)
print(a * b)
print(a / b)
выводит:
5
1
6
1.5
Порядок выполнения операций
В математике существует порядок выполнения операций, определяющий, какие операции должны выполняться раньше других, даже если в выражении они написаны правее. Порядок выполнения операций в Python аналогичен порядку выполнения операций, которые вы изучали на уроках математики.
Приведённый ниже код:
num1 = 2 + 3 * 4
num2 = (2 + 3) * 4
print(num1)
print(num2)
выводит:
14
20
В переменной num1
будет храниться число 14
, поскольку первым делом выполняется умножение, а уже затем сложение. В переменной num2
будет храниться число 20
, поскольку скобки изменили приоритет выполнения операций.
Запомни: первым делом выполняется умножение или деление, затем сложение и вычитание. Для изменения порядка выполнения операций понадобятся скобки.
Преобразование типов
Преобразование строки к целому числу
Для того чтобы преобразовать строку к целому числу, мы используем команду int()
.
Приведенный ниже код:
s = '1992'
year = int(s)
print(year)
выводит:
1992
Переменная s
имеет строковый тип данных. С помощью команды int()
мы преобразовали строку к целому числу и записали результат в переменную с именем year
. Мы используем новую команду (точнее, функцию) – int()
. Она означает следующее: "Возьми то, что указано в качестве аргумента в скобках, и преврати это в целое число". Таким образом, переменная year
имеет целый тип данных, а переменная s
– строковый тип данных.
Теперь попробуем написать программу, которая считывает два целых числа и выводит на экран их сумму:
num1 = input()
num2 = input()
print(num1 + num2)
Приведенный выше код не дает нам желаемого результат, потому что Python считает, что в переменных num1
и num2
находится текст (строковый тип данных). Так происходит, поскольку команда input()
по умолчанию считывает именно текст. Для того чтобы явно указать, что требуется работать с переменными целого типа, надо написать так:
num1 = int(input())
num2 = int(input())
print(num1 + num2)
Запомни: для того чтобы считать одно целое число, мы пишем следующий код:
num = int(input())
Преобразование целого числа к строке
Для того чтобы преобразовать целое число в строку, мы используем команду str()
. Рассмотрим следующий код:
num = 17
s = str(num)
Переменная num
имеет целый тип данных. С помощью команды str()
мы преобразовали целое число в строку и записали результат в переменную s
. Таким образом, переменная num
имеет целочисленный тип данных, а переменная s
– строковый тип данных.
Примечания
Примечание 1. При работе с целочисленными переменными часто нужно осуществлять присвоение значению переменной целой математической формулы:
<имя переменной> = <математическая формула>

Примечание 2. Сокращение int
происходит от английского integer – целый.
Примечание 3. В большинстве языков программирования переменная целого типа имеет ограничения. Например, в языке C# переменная целого типа может принимать значения из диапазона [−263;263−1]. В Python реализована так называемая длинная арифметика, то есть, по сути, переменная целого типа не имеет ограничений.
Примечание 4. Минус может использоваться для обозначения отрицательных чисел. А вот операции +
, /
и *
всегда стоят между двумя переменными и что-то с ними делают.
num1 = -6
num2 = 17 - 7