/
Программирование
/
Курс Python
/

Явное преобразование типов

Python: Явное преобразование типов

В реальных программах часто возникает ситуация, когда данные одного типа нужно превратить в другой. Это особенно актуально, например, при обработке ввода пользователя или данных из веб-форм. Там все приходит в виде строк, даже если вы ввели число.

Преобразование типов в Python

Чтобы работать с такими значениями, их нужно явно преобразовать в нужный тип и для этого в Python есть свой набор функций.

Преобразование строки в число

Представим, что мы получили из формы строку '345', а нам нужно сложить это число с другим:

number = int('345')
print(number + 5)  # => 350

Функция int() получает строку и превращает ее в целое число. Такая функция называется функцией приведения типа (casting function).

value = '0'
converted_value = int(value)
print(converted_value)  # => 0

print(int('10'))        # => 10
print(int(3.5))         # => 3  (дробная часть отбрасывается)
'123'  ──int()──→  123  ──float()──→  123.0
                    │
                 str()
                    ↓
                  '123'

Преобразование в строку с помощью str()

Если нужно превратить число или логическое значение в строку, используйте функцию str():

print(str(10))      # => '10'
print(str(True))    # => 'True'
print(str(3.5))     # => '3.5'

Это полезно, например, при формировании текстов, сообщений и вывода:

age = 42
print("Age: " + str(age))  # => Age: 42

Преобразование в число с плавающей точкой с помощью float()

Если нужно число с десятичной точкой, используйте float():

print(float(5))     # => 5.0
print(float('2.7')) # => 2.7

Задание

Термометр показывает температуру с десятичной точкой. Программа должна вывести только целое значение с подписью.

У вас есть переменная:

temperature = 36.6

Напишите программу, которая:

  1. Преобразует температуру в целое число.
  2. Полученное число превратит в строку.
  3. Выведет эту строку на экран, добавив через пробел подпись °C.

Используйте функции int() и str().

Полезное

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются