Python type konvertering og type casting (med eksempler)

I denne artikel lærer du om typekonvertering og anvendelser af typekonvertering.

Inden du lærer Type Conversion i Python, skal du have viden om Python-datatyper.

Type konvertering

Processen med at konvertere værdien af ​​en datatype (heltal, streng, float osv.) Til en anden datatype kaldes typekonvertering. Python har to typer typekonvertering.

  1. Implicit type konvertering
  2. Eksplicit type konvertering

Implicit type konvertering

I Implicit type konvertering konverterer Python automatisk en datatype til en anden datatype. Denne proces behøver ikke nogen brugerinddragelse.

Lad os se et eksempel, hvor Python fremmer konverteringen af ​​den lavere datatype (heltal) til den højere datatype (float) for at undgå datatab.

Eksempel 1: Konvertering af heltal til float

 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))

Når vi kører ovenstående program, vil output være:

 datatype af num_int: datatype af num_flo: Værdi af num_new: 124.23 datatype af num_new: 

I ovenstående program,

  • Vi tilføjer to variabler num_int og num_flo, hvor vi gemmer værdien i num_new.
  • Vi vil se på datatypen for henholdsvis alle tre objekter.
  • I output kan vi se datatypen num_int er en, integermens datatypen num_flo er en float.
  • Vi kan også se, at num_new har en floatdatatype, fordi Python altid konverterer mindre datatyper til større datatyper for at undgå tab af data.

Lad os nu tilføje en streng og et heltal og se, hvordan Python håndterer det.

Eksempel 2: Tilføjelse af streng (højere) datatype og heltal (lavere) datatype

 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)

Når vi kører ovenstående program, vil output være:

 Datatype num_int: Datatype num_str: Traceback (seneste opkald sidst): Fil "python", linje 7, i TypeError: ikke-understøttet operand type (r) for +: 'int' og 'str'

I ovenstående program,

  • Vi tilføjer to variabler num_int og num_str.
  • Som vi kan se fra output, fik vi TypeError. Python er ikke i stand til at bruge Implicit Conversion under sådanne forhold.
  • Python har dog en løsning til disse typer situationer, der er kendt som eksplicit konvertering.

Eksplicit type konvertering

I Konvertering af eksplicit type konverterer brugere datatypen for et objekt til den krævede datatype. Vi bruger de foruddefinerede funktioner som int(), float(), str()osv at udføre eksplicit typekonvertering.

Denne type konvertering kaldes også typecasting, fordi brugeren caster (ændrer) datatypen på objekterne.

Syntaks:

 (udtryk)

Typecasting kan udføres ved at tildele udtrykket den krævede datatypefunktion.

Eksempel 3: Tilføjelse af streng og heltal ved hjælp af eksplicit konvertering

 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))

Når vi kører ovenstående program, vil output være:

 Datatype num_int: Datatype num_str før Type Casting: Datatype num_str efter Type Casting: Sum af nummer_int og num_str: 579 Datatype for summen: 

I ovenstående program,

  • Vi tilføjer variabel num_str og num_int.
  • Vi konverterede num_str fra streng (højere) til heltal (lavere) type ved hjælp af int()funktion til at udføre tilføjelsen.
  • Efter konvertering af num_str til en heltal er Python i stand til at tilføje disse to variabler.
  • Vi fik num_sum-værdien og datatypen til at være et heltal.

Nøglepunkter at huske

  1. Type konvertering er konvertering af objekt fra en datatype til en anden datatype.
  2. Implicit type konvertering udføres automatisk af Python-tolk.
  3. Python undgår tab af data i Implicit Type Conversion.
  4. Eksplicit type konvertering kaldes også Type Casting, datatyperne af objekter konverteres ved hjælp af foruddefinerede funktioner af brugeren.
  5. I Type Casting kan tab af data forekomme, når vi tvinger objektet til en bestemt datatype.

Interessante artikler...