Итак, мы видим, что Питон умеет работать как минимум с двумя видами данных — числами и строками.
Числа записываются последовательностью цифр, также перед числом может стоять знак минус, а строки записываются
в одинарных кавычках. 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 должно быть целого типа.