Python tipa pārveidošana un tipa liešana (ar piemēriem)

Šajā rakstā jūs uzzināsit par veida pārveidošanu un veida pārveidošanu.

Pirms apgūt tipa pārveidošanu Python, jums vajadzētu būt zināšanām par Python datu tipiem.

Ierakstiet reklāmguvumu

Procesu, kas tiek pārveidots par viena datu veida vērtību (vesels skaitlis, virkne, pludiņš utt.) Uz citu datu tipu, sauc par tipa pārveidošanu. Python ir divu veidu tipa pārveidošana.

  1. Netiešā veida reklāmguvums
  2. Nepārprotama veida pārveidošana

Netiešā veida reklāmguvums

Netiešā tipa pārveidošanā Python automātiski pārveido vienu datu tipu citam datu tipam. Šajā procesā nav nepieciešama lietotāju iesaistīšanās.

Apskatīsim piemēru, kur Python veicina zemāka datu veida (vesels skaitlis) pārveidošanu par augstāku datu tipu (pludiņš), lai izvairītos no datu zuduma.

1. piemērs: vesela skaitļa konvertēšana uz peldošu

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

Kad mēs palaidīsim iepriekš minēto programmu, izeja būs:

 num_int datatips: num_flo datu tips: num_new vērtība: 124.23 num_new datatips: 

Iepriekš minētajā programmā

  • Mēs pievienojam divus mainīgos num_int un num_flo, saglabājot vērtību num_new.
  • Mēs aplūkosim visu trīs objektu datu tipu attiecīgi.
  • Izejā mēs varam redzēt, ka num_int ir integerdatu tips, bet num_flo datu tips ir a float.
  • Tāpat mēs varam redzēt, ka num_new ir floatdatu tips, jo Python vienmēr pārveido mazākus datu tipus par lielākiem datu tipiem, lai izvairītos no datu zuduma.

Tagad mēģināsim pievienot virkni un veselu skaitli, un redzēsim, kā ar to rīkojas Python.

2. piemērs: virknes (augstāka) datu veida un vesela skaitļa (zemāka) datu veida pievienošana

 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)

Kad mēs palaidīsim iepriekš minēto programmu, izeja būs:

 Num_int datu tips: num_str datu tips: Traceback (pēdējais zvans pēdējais): Fails "python", 7. rinda, TypeError: neatbalstīts (-i) operanda tips (-iem): "int" un "str"

Iepriekš minētajā programmā

  • Mēs pievienojam divus mainīgos num_int un num_str.
  • Kā mēs redzam no izejas, mēs to dabūjām TypeError. Python šādos apstākļos nevar izmantot netiešo reklāmguvumu.
  • Tomēr Python ir šāda veida situāciju risinājums, kas ir pazīstams kā skaidra pārveidošana.

Nepārprotama veida pārveidošana

Sadaļā Nepārprotama tipa pārveidošana lietotāji konvertē objekta datu tipu uz nepieciešamo datu tipu. Mēs izmantojam iepriekš definētas funkcijas, piemēram int(), float(), str()uc, lai veiktu skaidru tipa konversiju.

Šāda veida pārveidošanu sauc arī par tipparaugu, jo lietotājs nodod (maina) objektu datu tipu.

Sintakse:

 (izteiksme)

Rakstīšanu ar rakstzīmēm var veikt, piešķirot izteiksmei nepieciešamo datu tipa funkciju.

3. piemērs: virknes un vesela skaitļa pievienošana, izmantojot skaidru konvertēšanu

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

Kad mēs palaidīsim iepriekš minēto programmu, izeja būs:

 Num_int datu tips: num_str datu tips pirms Type Casting: Num_str datu tips pēc Type Casting: num_int un num_str summa: 579 Summas datu tips: 

Iepriekš minētajā programmā

  • Pievienojam mainīgo num_str un num_int.
  • Mēs pārveidojām num_str no virknes (augstāks) uz veselu skaitli (zemāku), izmantojot int()funkciju, lai veiktu pievienošanu.
  • Pēc num_str konvertēšanas uz veselu skaitli Python spēj pievienot šos divus mainīgos.
  • Mēs saņēmām vērtību_summa un datu veidu kā veselu skaitli.

Galvenie punkti, kas jāatceras

  1. Tips Conversion ir objekta pārveidošana no viena datu veida uz citu datu tipu.
  2. Netiešo tipa pārveidošanu automātiski veic Python tulks.
  3. Python ļauj izvairīties no datu zuduma netiešā veida reklāmguvumā.
  4. Skaidru tipa konvertēšanu sauc arī par tipa apraidi, objektu datu tipi tiek pārveidoti, izmantojot lietotāja iepriekš definētas funkcijas.
  5. Veicot tipa apraidi, var tikt zaudēti dati, kad mēs piespiežam objektu noteiktam datu tipam.

Interesanti raksti...