Руководство по преобразованию типов данных в Python

В этом руководстве вы узнаете о преобразовании типов данных в Python и некоторых полезных функциях преобразования типов.

Содержание

Что такое преобразование типов в Python?

Чтобы получить данные от пользователей, вы используете функцию input(). Например:

value = input('Enter a value:')
print(value)

Когда вы выполните этот код, он предложит вам ввести данные в терминале:

Enter a value:

Если вы введете значение, например число, программа отобразит это значение обратно:

Enter a value:100
100

Однако функция input() возвращает строку, а не целое число.

В следующем примере вам будет предложено ввести два входных значения: чистая цена и ставка налога. После этого код рассчитывает налог и отображает результат на экране:

price = input('Enter the price($):')
tax = input('Enter the tax rate(%):')

tax_amount = price * tax / 100

print(f'The tax amount price is ${tax_amount}')

Когда вы запускаете программу и вводите некоторые цифры:

Enter the price($):100
Enter the tax rate(%):10

… вы получите следующую ошибку:

Traceback(most recent call last):
  File "main.py", line 4, in <module>
    tax_amount = price * tax / 100
TypeError: can't multiply sequence by non-int of type 'str'

Поскольку входные значения являются строками, вы не можете применить оператор умножения. Чтобы решить эту проблему, вам необходимо преобразовать строки в числа перед выполнением вычислений. Чтобы преобразовать строку в число, вы используете функцию int(). Точнее, функция int() преобразует строку в целое число.

В следующем примере функция int() используется для преобразования входных строк в числа:

price = input('Enter the price($):')
tax = input('Enter the tax rate(%):')

tax_amount = int(price) * int(tax) / 100
print(f'The tax amount is ${tax_amount}')

Если вы запустите программу и введете некоторые значения, вы увидите, что она работает правильно:

Enter the price($):
100
Enter the tax rate(%):
10
The tax amount is $10.0

Другие функции преобразования типов

Помимо функций int(str), Python поддерживает и другие функции преобразования типов. Ниже показаны наиболее важные из них на данный момент:

  • float(str) – преобразует строку в число с плавающей запятой.
  • bool(val) – преобразует значение в логическое значение: True или False.
  • str(val) – возвращает строковое представление значения.

Получение типа значения

Чтобы получить тип значения, вы используете функцию type(value). Например:

>>> type(100)
<class 'int'>
>>> type(2.0)
<class 'float'>
>>> type('Hello')
<class 'str'>
>>> type(True)
<class 'bool'>

Как вы можете ясно видеть из вывода:

  • Число 100 имеет тип int.
  • Число 2.0 имеет тип float.
  • Строка «Hello» имеет тип str.
  • А значение True имеет тип bool.

Перед каждым типом вы видите ключевое слово class. Более подробную информацию об этом вы узнаете позже.

Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *