Преобразуване на типа на Python и леене на тип (с примери)

В тази статия ще научите за преобразуването на типове и употребите на преобразуването на типа.

Преди да научите преобразуването на типове в Python, трябва да имате познания за типовете данни на Python.

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

Процесът на преобразуване на стойността на един тип данни (цяло число, низ, плаващ и т.н.) в друг тип данни се нарича преобразуване на типа. Python има два типа преобразуване на типа.

  1. Неявно преобразуване на типа
  2. Изрично преобразуване на типове

Неявно преобразуване на типа

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

Нека видим пример, при който Python насърчава преобразуването на по-ниския тип данни (цяло число) в по-високия тип данни (float), за да се избегне загуба на данни.

Пример 1: Преобразуване на цяло число в плаващо

 num_int = 123 num_flo = 1.23 num_new = num_int + num_flo print("datatype of num_int:",type(num_int)) print("datatype of num_flo:",type(num_flo)) print("Value of num_new:",num_new) print("datatype of num_new:",type(num_new))

Когато стартираме горната програма, изходът ще бъде:

 тип данни на num_int: тип данни на num_flo: Стойност на num_new: 124.23 тип данни на num_new: 

В горната програма,

  • Добавяме две променливи num_int и num_flo, като съхраняваме стойността в num_new.
  • Ще разгледаме съответно типа данни и на трите обекта.
  • В изхода можем да видим, че типът данни num_int е, integerдокато типът данни num_flo е a float.
  • Също така можем да видим, че num_new има тип floatданни, защото Python винаги преобразува по-малки типове данни в по-големи типове данни, за да избегне загубата на данни.

Сега, нека опитаме да добавим низ и цяло число и да видим как Python се справя с него.

Пример 2: Добавяне на тип данни за низ (по-висок) и тип данни за цяло число (по-нисък)

 num_int = 123 num_str = "456" print("Data type of num_int:",type(num_int)) print("Data type of num_str:",type(num_str)) print(num_int+num_str)

Когато стартираме горната програма, изходът ще бъде:

 Тип данни на num_int: Тип данни на num_str: Проследяване (последно последно повикване): Файл „python“, ред 7, в TypeError: неподдържан тип (операнди) за +: 'int' и 'str'

В горната програма,

  • Добавяме две променливи num_int и num_str.
  • Както можем да видим от резултата, имаме TypeError. Python не може да използва имплицитна конверсия при такива условия.
  • Въпреки това, Python има решение за този тип ситуации, което е известно като Изрично преобразуване.

Изрично преобразуване на типове

В Изрично преобразуване на типове потребителите преобразуват типа данни на обект в необходимия тип данни. Ние използваме най-предварително дефинирани функции като int(), float(), str(), и т.н., за да изпълнява явно тип реализация.

Този тип преобразуване се нарича още typecasting, защото потребителят предава (променя) типа данни на обектите.

Синтаксис :

 (израз)

Типирането може да се извърши чрез присвояване на необходимата функция на типа данни към израза.

Пример 3: Добавяне на низ и цяло число чрез явно преобразуване

 num_int = 123 num_str = "456" print("Data type of num_int:",type(num_int)) print("Data type of num_str before Type Casting:",type(num_str)) num_str = int(num_str) print("Data type of num_str after Type Casting:",type(num_str)) num_sum = num_int + num_str print("Sum of num_int and num_str:",num_sum) print("Data type of the sum:",type(num_sum))

Когато стартираме горната програма, изходът ще бъде:

 Тип на данните num_int: Тип на данните num_str преди леене на тип: Тип данни на num_str след леене на тип: Сума от num_int и num_str: 579 Тип данни на сумата: 

В горната програма,

  • Добавяме променлива num_str и num_int.
  • Преобразувахме num_str от низ (по-висок) в цяло число (по-нисък) тип, използвайки int()функция за извършване на добавянето.
  • След конвертиране на num_str в целочислена стойност, Python е в състояние да добави тези две променливи.
  • Получихме стойността num_sum и типа данни да бъдат цяло число.

Основни моменти, които трябва да запомните

  1. Преобразуване на тип е преобразуването на обект от един тип данни в друг тип данни.
  2. Преобразуването на неявен тип се извършва автоматично от интерпретатора на Python.
  3. Python избягва загубата на данни при имплицитно преобразуване на типове.
  4. Изричното преобразуване на типове се нарича още Casting Type, типовете данни на обектите се преобразуват с помощта на предварително дефинирани функции от потребителя.
  5. При леенето на типове може да настъпи загуба на данни, докато налагаме обекта към определен тип данни.

Интересни статии...