Часто возникает ситуация, когда нужно преобразовать данные одного типа в другой тип (например, превратить строку в число). Для этого в Python имеется набор функций, названия которых совпадают с именами типов данных (посмотреть их можно тут: Типы данных ). В скобках мы указываем значение, которое хотим преобразовать. Посмотрим на примере:
a = "55" # a - это **строка** "55"
b = int(a) # b - это **число** 55
print(a * 2) # Выведется 5555
print(b * 2) # Выведется 110
В первом случае мы умножили строку "55" на два, и поэтому в результате мы получили строку "5555". Во втором случае мы умножили число 55 на два, в результате мы получили число 110.
<aside> 👉 Умножение строк (и прочие операции с ними) мы рассмотрим в теме 5.
</aside>
Другие преобразования можно увидеть ниже:
f = float('5.6') # В переменной лежит **число** 5.6
s = str(88 * 2) # В переменной лежит **строка** "176"
b = bool(99) # В переменной лежит **логическое значение** True
print(f, s, b) # Выведется "5.6 176 True"
<aside> 👉 Стало интересно, как работает преобразование в логический тип? Мы это рассмотрим подробнее в теме 3.
</aside>
Не все значения можно преобразовать в другие типы. Попробуем преобразовать строку в целое число:
r = "XXI" # Число 21 в римской системе счисления
d = int(r) # Ошибка: эту строку нельзя преобразовать в число с основанием 10
Если нужно определить тип данных какой-то переменной (или значения), можно воспользоваться функцией type():
i = 5
f = 3.6
s = "Test"
b = False
print(type(i)) # <class 'int'>
print(type(f)) # <class 'float'>
print(type(s)) # <class 'str'>
print(type(b)) # <class 'bool'>