„Python“ tipo konversija ir tipo perdavimas (su pavyzdžiais)

Šiame straipsnyje sužinosite apie tipo konversiją ir tipo konversijos naudojimą.

Prieš mokydamiesi tipo konversijos „Python“, turėtumėte žinoti apie „Python“ duomenų tipus.

Tipo konversija

Procesas, kai vieno duomenų tipo (sveikasis skaičius, eilutė, plūduriuojantis elementas ir kt.) Vertė konvertuojama į kitą duomenų tipą, vadinamas tipo konversija. „Python“ yra dviejų tipų konversijos tipai.

  1. Numanomas tipo konversija
  2. Aiškus tipo konversija

Numanomas tipo konversija

Atliekant numanomą tipo konversiją, „Python“ automatiškai konvertuoja vieną duomenų tipą į kitą duomenų tipą. Šiam procesui nereikia jokio vartotojo įsitraukimo.

Pažiūrėkime pavyzdį, kai „Python“ skatina mažesnio duomenų tipo (sveiko skaičiaus) konversiją į aukštesnį duomenų tipą („float“), kad būtų išvengta duomenų praradimo.

1 pavyzdys: sveiko skaičiaus pavertimas plūduriuojančiu

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

Kai vykdysime pirmiau nurodytą programą, išvestis bus:

 num_int duomenų tipas: num_flo duomenų tipas: num_new reikšmė: 124.23 num_new duomenų tipas: 

Pirmiau pateiktoje programoje

  • Pridedame du kintamuosius num_int ir num_flo, išsaugodami vertę num_new.
  • Mes apžvelgsime atitinkamai visų trijų objektų duomenų tipą.
  • Išvestyje matome, kad num_int duomenų tipas yra, integero num_flo duomenų tipas yra a float.
  • Be to, matome, kad num_new turi floatduomenų tipą, nes „Python“ visada paverčia mažesnius duomenų tipus į didesnius, kad išvengtų duomenų praradimo.

Pabandykime pridėti eilutę ir sveikąjį skaičių ir pažiūrėkime, kaip „Python“ su ja elgiasi.

2 pavyzdys: eilutės (aukštesnio) duomenų tipo ir sveiko skaičiaus (mažesnio) duomenų tipo pridėjimas

 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)

Kai vykdysime pirmiau nurodytą programą, išvestis bus:

 Num_int duomenų tipas: num_str duomenų tipas: Traceback (paskutinis skambutis paskutinis): Failas „python“, 7 eilutė, „TypeError“: nepalaikomas operando tipas (-ai): „int“ ir „str“

Pirmiau pateiktoje programoje

  • Pridedame du kintamuosius num_int ir num_str.
  • Kaip matome iš išvesties, gavome TypeError. „Python“ negali naudoti numanomos konversijos tokiomis sąlygomis.
  • Tačiau „Python“ turi tokio tipo situacijų sprendimą, kuris vadinamas „Aiškia konversija“.

Aiškus tipo konversija

Vykdydami aiškų tipo konversiją, vartotojai objekto duomenų tipą konvertuoja į reikalaujamą duomenų tipą. Mes naudojame iš anksto funkcijų, pavyzdžiui int(), float(), str(), ir tt atlikti aiškų tipo konversiją.

Šis konversijos tipas taip pat vadinamas tipografija, nes vartotojas pateikia (keičia) objektų duomenų tipą.

Sintaksė:

 (išraiška)

Raštas spausdinant gali būti atliekamas priskiriant reikiamą duomenų tipo funkciją išraiškai.

3 pavyzdys: eilutės ir sveiko skaičiaus pridėjimas naudojant aiškų konversiją

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

Kai vykdysime pirmiau nurodytą programą, išvestis bus:

 Num_int duomenų tipas: num_str duomenų tipas prieš Type Casting: Num_str duomenų tipas po Type Casting: Num_int ir num_str suma: 579 Sumos duomenų tipas: 

Pirmiau pateiktoje programoje

  • Pridedame kintamąjį num_str ir num_int.
  • Naudodami int()funkciją, atlikdami pridėjimą, mes konvertavome numer_str iš eilutės (didesnė) į sveiko skaičiaus (mažesnis) tipą .
  • Konvertuodamas num_str į sveiko skaičiaus vertę, „Python“ gali pridėti šiuos du kintamuosius.
  • Gavome skaičių_sum reikšmę ir duomenų tipą kaip sveikąjį skaičių.

Pagrindiniai dalykai, kuriuos reikia atsiminti

  1. Tipo konversija yra objekto konversija iš vieno duomenų tipo į kitą duomenų tipą.
  2. Numanomą tipo konversiją automatiškai atlieka „Python“ vertėjas.
  3. „Python“ išvengia duomenų praradimo vykdant numanomą tipo konversiją.
  4. Aiškus tipo konversija taip pat vadinamas tipo liejimu, objektų duomenų tipai konvertuojami naudojant iš anksto nustatytas vartotojo funkcijas.
  5. „Type Casting“ gali prarasti duomenis, nes mes priverčiame objektą naudoti tam tikrą duomenų tipą.

Įdomios straipsniai...