Итак, мы видим, что Питон умеет работать как минимум с двумя видами данных — числами и строками.
Числа записываются последовательностью цифр, также перед числом может стоять знак минус, а строки записываются
в одинарных кавычках. 2
и '2'
— это разные объекты, первый объект —
число, а второй —строка.
В питоне вообще все данные называются объектами.
Число 2 представляется объектом «число 2», строка 'hello'
– это объект «строка 'hello'».
Каждый объект относится к какому-то типу.
Строки хранятся в объектах типа str
, целые числа хранятся в объектах типа int
.
Тип объекта определяет, какие действия можно делать с объектами этого типа.
Так операция +
для целых чисел и для строк работает по-разному:
для чисел это сложение, а для строк —конкатенация.
Кроме целых чисел есть и другой класс чисел: действительные (вещественные числа), представляемые в виде десятичных
дробей. Они записываются с использованием десятичной точки, например, 2.0
. В каком-то смысле,
2
и 2.0
имеют равные значение, но это—разные объекты. Например, можно
вычислить значения выражения 'ABC' * 10
(повторить строку 10 раз), но нельзя вычислить
'ABC' * 10.0
.
Определить тип объекта можно при помощи функции type
:
>>> type ( 2 ) < class 'int' > >>> type ( '2' ) < class 'str' > >>> type ( 2.0 ) < class 'float' > |
Обратите внимание —type
является функцией, аргументы функции указываются в скобках после ее имени.
Вот список основных операций для чисел:
A + B
— сумма;
A - B
— разность;
A * B
— произведение;
A / B
— частное;
A ** B
— возведение в степень. Полезно помнить, что квадратный корень из числа x
— это
x ** 0.5
, а корень степени n
это x ** (1 / n)
.
Есть также унарный вариант операции -
, то есть операция с одним аргументом. Она возвращает число,
противоположное данному. Например: -A
.
В выражении может встречаться много операций подряд. Как в этом случае определяется
порядок действий? Например, чему будет равно 1 + 2 * 3 ** 1 + 1
? В данном случае
ответ будет 8, так как сначала выполняется возведение в степень, затем – умножение, затем —
сложение.
Более общие правила определения приоритетов операций такие:
1. Выполняются возведения в степень справа налево, то есть 3 ** 3 ** 3
это .
2. Выполняются унарные минусы (отрицания).
3. Выполняются умножения и деления слева направо. Операции умножения и деления имеют одинаковый приоритет.
4. Выполняются сложения и вычитания слева направо. Операции сложения и вычитания имеют одинаковый приоритет.
Основные операции над строками:
A + B
— конкатенация;
A * n
— повторение n
раз, значение n
должно быть целого типа.