logo

String til int i Python

I denne opplæringen vil vi lære måtene å konvertere en streng til heltall i Python-

La oss se på et eksempel før vi fortsetter-

 a='Learning Python is fun' b= 20 #Displaying the type of a and b print(type(a)) print(type(b)) 

Produksjon:

 

I eksemplet ovenfor har vi deklarert variablene 'a' og 'b' med henholdsvis en streng og en heltallsverdi.

Vi kan verifisere deres datatyper ved å bruke type().

Spørsmålet som dukker opp her er hvorfor vi trenger å konvertere en streng til et heltall.

Følgende program illustrerer det samme-

streng til int
 value_a = '100' value_b = '26' res = value_a * value_b print('The multiplication of val_a and val_b gives: ',res) 

Produksjon:

 res = value_a * value_b TypeError: can't multiply sequence by non-int of type 'str' 

Siden den genererer denne typen feil, er dette grunnen til at vi må konvertere strengverdiene til heltall slik at vi enkelt kan fortsette med operasjonene.

Det er på tide å ta en titt på det første programmet som demonstrerer konvertering av en streng til et heltall.

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

Produksjon:

 17 

Forklaring:

La oss se forklaringen av programmet ovenfor-

  1. Det første trinnet er å erklære variabelen 'a' med en strengverdi.
  2. Etter dette har vi sjekket datatypen ved hjelp av type().
  3. For å konvertere strengen til et heltall har vi brukt int() og sjekket deretter typen.
  4. Nå har vi operert på variabelen 'a' ved å legge til 10 til den.
  5. Til slutt vises den resulterende verdien i utgangen.

Tilnærming-2

I det neste eksemplet vil vi gå for en indirekte tilnærming til å konvertere en streng til et heltall.

js global variabel

Følgende program viser hvordan det kan gjøres-

 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) 

Produksjon:

 The sum of value_a and value_b is 126.0 

Forklaring:

La oss forstå hva vi har gjort i programmet ovenfor-

  1. Det første trinnet er å deklarere de to variablene 'verdi_a' og 'verdi_b' med en strengverdi.
  2. Etter dette har vi sjekket deres datatype vha type().
  3. For å konvertere strengen til et heltall har vi brukt flyte() for å konvertere strengen til flytende verdi.
  4. I neste trinn vil vi konvertere strengverdien til 'verdi_b' til et heltall.
  5. Nå har vi lagt til 'verdi_a' og 'verdi_b' og skrevet ut summen deres.
  6. Til slutt vises den resulterende verdien i utgangen.

Tilnærming-3:

I det siste programmet vil vi diskutere enda et scenario for å konvertere streng til int i Python.

Her skal vi se hvordan vi kan konvertere et tall som er tilstede som en strengverdi til base 10 når det er på forskjellige baser.

Følgende program illustrerer det samme-

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

Produksjon:

 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 

Forklaring:

Det er på tide å ta et blikk på forklaringen til programmet ovenfor.

  1. I det første trinnet har vi deklarert verdien av variabelen.
  2. Siden utgangen alltid vil være i base 10, har vi gitt de forskjellige basisverdiene inni int().
  3. Grunnverdiene vi har tatt her er 10, 8 og 6.
  4. Når programmet kjøres, vises forventet utgang.

Konklusjon

I denne opplæringen lærte vi de forskjellige måtene å konvertere en streng til en int-verdi.