Хотя в Python типов данных как бы нет, но на самом деле они есть. Просто их не надо указывать при объявлении переменных. Но при выполнении каких-либо операции с переменными разных типов можно получить ошибки, особенно если вы в ходе разработки забыли, какая переменная имеет какой тип. Кстати, ранее я рассказывал о том, как узнать тип переменной.
Исходя из вышесказанного становится ясно, что Python, хотя и позволяет иногда совмещать переменные разных типов в одном выражении, всё же требует, чтобы эти типы были совместимы. Поэтому и возникает необходимость преобразования типов, как и в других языках.
В любом языке имеется множество функций для выполнения преобразований. И в Python их тоже немало. Но я расскажу только о некоторых простейших, поскольку этот канал для начинающих.
Начнём с преобразования строки в целое число. Если вы сделаете так:
str = "13"
x = 1
x = x + str
то это приведёт к ошибке. Потому что это не JavaScript - в Python нельзя так просто сложить строку с числом, даже если в строке содержится как бы число. Но можно преобразовать строку в число, тогда всё будет в порядке:
x = x + int(str)
Как вы догадались функция int() преобразует строку в число. Впрочем, не только строку. Но об этом чуть позже. А пока посмотрите на картинку, чтобы во всём разобраться окончательно:
Функция int(), как уже было сказано, может преобразовать в число не только строку, но и логическое значение, а также вещественное число. причём в последнем случае произойдёт не округление, а отбрасывание дробной части. Так что будьте внимательны:
Ну и, наконец, есть ещё функция, которая преобразует число в строку. В этом случае неважно, какое это число - целое или вещественное:
si = str(13)
sf = str(3.14)
Переменные si и sf - это строковые переменные. И после выполнения этого кода они содержат, соответственно, строки '13' и '3.14'.
Если же вы случайно передадите в функцию не число, а строку:
si = str('13')
то ничего страшного не произойдёт. Функция просто вернёт ту же строку.
P.S. Чуть не забыл про функцию float(), которая преобразует строку в вещественное число. Пример:
f = float('3.14')
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.