V tej vadnici se bomo naučili načinov pretvorbe niza v celo število v Pythonu-
Oglejmo si primer, preden nadaljujemo -
a='Learning Python is fun' b= 20 #Displaying the type of a and b print(type(a)) print(type(b))
Izhod:
V zgornjem primeru smo deklarirali spremenljivki 'a' in 'b' z nizom oziroma celoštevilsko vrednostjo.
Njihove vrste podatkov lahko preverimo z uporabo tip().
hekerska obdelava
Vprašanje, ki se tukaj pojavi, je, zakaj moramo pretvoriti niz v celo število.
Naslednji program ponazarja isto -
value_a = '100' value_b = '26' res = value_a * value_b print('The multiplication of val_a and val_b gives: ',res)
Izhod:
res = value_a * value_b TypeError: can't multiply sequence by non-int of type 'str'
Ker generira to vrsto napake, je to razlog, da moramo vrednosti niza pretvoriti v cela števila, da lahko enostavno nadaljujemo z operacijami.
nedeterministični končni avtomati
Čas je, da si ogledamo prvi program, ki prikazuje pretvorbo niza v celo število.
a = '7' print(type(a)) #using int() conv_a=int(a) print(type(conv_a)) conv_a = conv_a+10 print(conv_a) print(type(conv_a))
Izhod:
17
Pojasnilo:
string.compare c#
Oglejmo si razlago zgornjega programa-
- Prvi korak je deklaracija spremenljivke 'a' z vrednostjo niza.
- Po tem smo z uporabo preverili njegov tip podatkov tip().
- Za pretvorbo niza v celo število smo uporabili int() in nato preveril njegovo vrsto.
- Sedaj smo operirali s spremenljivko 'a' tako, da smo ji dodali 10.
- Končno se rezultantna vrednost prikaže v izhodu.
Pristop-2
V naslednjem primeru se bomo odločili za posredni pristop pretvorbe niza v celo število.
Naslednji program prikazuje, kako je to mogoče storiti -
value_a = '100' value_b = '26' print(type(value_a)) print(type(value_b)) #converting to float value_a=float(value_a) #converting to int value_b=int(value_b) res_sum=value_a+value_b print('The sum of value_a and value_b is ',res_sum)
Izhod:
The sum of value_a and value_b is 126.0
Pojasnilo:
Naj razumemo, kaj smo naredili v zgornjem programu-
niz v polje java
- Prvi korak je deklaracija dveh spremenljivk 'value_a' in 'value_b' z vrednostjo niza.
- Po tem smo z uporabo preverili njihov tip podatkov tip().
- Za pretvorbo niza v celo število smo uporabili float() za pretvorbo niza v plavajočo vrednost.
- V naslednjem koraku bomo vrednost niza 'value_b' pretvorili v celo število.
- Zdaj smo dodali 'value_a' in 'value_b' in natisnili njuno vsoto.
- Končno se rezultantna vrednost prikaže v izhodu.
Pristop-3:
V zadnjem programu bomo obravnavali še en scenarij pretvorbe niza v int v Pythonu.
Tukaj bomo videli, kako lahko število, ki je prisotno kot vrednost niza, pretvorimo v osnovo 10, ko je na različnih osnovah.
Naslednji program ponazarja isto -
num_value = '234' # printing the value of num_value print('The value of num_value is :', num_value) #converting 234 to base 10 assuming it is in base 10 print('The value of num_value from base 10 to base 10 is:', int(num_value)) #converting 234 to base 10 assuming it is in base 8 print('The value of num_value from base 8 to base 10 is :', int(num_value, base=8)) #converting 234 to base 10 assuming it is in base 6 print('The value of num_value base 6 to base 10 is :', int(num_value, base=6))
Izhod:
mylivericket
The value of num_value is: 234 The value of num_value from base 10 to base 10 is: 234 The value of num_value from base 8 to base 10 is: 156 The value of num_value base 6 to base 10 is: 94
Pojasnilo:
Čas je, da si ogledamo razlago zgornjega programa.
- V prvem koraku smo deklarirali vrednost spremenljivke.
- Ker bo rezultat vedno v osnovi 10, smo notri zagotovili različne osnovne vrednosti int().
- Osnovne vrednosti, ki smo jih vzeli tukaj, so 10, 8 in 6.
- Ob izvajanju programa se prikaže pričakovan rezultat.
Zaključek
V tej vadnici smo se naučili različnih načinov pretvorbe niza v vrednost int.