Hvordan konvertere en streng til heltall ved hjelp av Python



Denne artikkelen vil gi deg en detaljert og omfattende kunnskap om hvordan du konverterer en streng til heltall på forskjellige måter med eksempler.

I dette emnet vil vi lære om hvordan du konverterer en streng til heltall med og uten bruk av innebygd datatype. Vi vet at en streng er en samling av tegn som er ordnet sekvensielt i anførselstegn, og et helt tall er et tall uten desimaltegn og ikke lukket med noen anførselstegn.

Streng til heltall python





Men når spørsmålet kommer om hvordan man konverterer en datatype til en annen, gir Python en enkel måte å konvertere til hverandre. I dette tilfellet ser vi hvordan vi kan konvertere en streng til et heltall i følgende rekkefølge:

Bruke innebygde datatyper



Anta at når jeg tar innspill fra brukeren av en eller annen grunn, tar Python det og returnerer det som en streng selv. Med andre ord, selv om noen skriver inn et nummer som en inngang, returnerer Python det som en streng.

name = input ('What is your name:') print (name) print (type (name)) age = input ('What is your age:') print (age) print (type (age))

Produksjon:

Hva heter du: Tyra



Tyra

Hva er din alder: 20 år

tjue

Så du forstår, typen navn og alder som inngangen er ‘String’.

Anta at hvis vi vil legge til 5 i alderen, gjør vi følgende:

name = input ('Hva heter du:') print (name) print (type (name)) age = input ('What is your age:') print (age) print (type (age)) print (age + 5)

Produksjon:

Hva heter du: Tyra

Tyra

Hva er din alder: 20 år

tjue

Sporing (siste samtale sist):

Fil 'C: /Users/prac.py', linje 9, i

trykk (alder + 5)

TypeError: må være str, ikke int

Vi kan ikke legge 5 til alder fordi alder er av typen String og vi kan ikke gjøre direkte matematikk med strenger. Så vi må endre alderen til et helt tall fordi vi har tatt alderen som inngangen, og Python returnerer den som streng.

Derfor.

name = input ('Hva heter du:') print (name) print (type (name)) age = input ('What is your age:') print (age) print (type (age)) age = int ( alder) trykk (alder + 5)

Produksjon:

Hva heter du: Tyra

Tyra

Hva er din alder: 20 år

tjue

25

Konvensjonell måte

hva er metode i javascript

Anta at vi ikke vil bruke den innebygde funksjonen int () til å konvertere streng til et helt tall.Så vi må bruke konvensjonell måte å konvertere.

Her er en enkel måte å gå for konvertering uten å bruke int ().

'' '' 123 '-> 123' -12332 '-> -12332' '' def str_to_int (input_str): output_int = 0 if input_str [0] == '-': start_idx = 1 is_negative = True else: start_idx = 0 is_negative = Falsk for i innen rekkevidde (start_idx, len (input_str)): sted = 10 ** (len (input_str) - (i + 1)) siffer = ord (input_str [i]) - ord ('0') output_int + = sted * siffer hvis er_negativ: retur -1 * output_int annet: return output_int s = '554' x = str_to_int (s) print (type (x)) s = '123' print (str_to_int (s)) s = '-123' utskrift (str_to_int (s))

Produksjon:

123

-123

  • Først skal vi sjekke om tallet som oppgis av brukeren inneholder et minustegn eller ikke, dvs. er det et negativt tall eller ikke.Hvis den inneholder den første posisjonen i et minustegn, starter vi konverteringen fra den andre posisjonen som inneholder tall.

  • Ethvert tall, la oss si 123, kan skrives i form -10 ** 2 * 1 + 10 ** 1 * 2 + 10 ** 0 * 3

  • På samme måte deler vi hvert av inngangstallene ved hjelp av ord (argument) .

  • ord (‘0’) vil returnere 48, ord (‘1’) returnerer 49 etc.

  • Her bruker vi logikken som ord ('1') - ord ('0) = 1, ord (' 2 ') - ord (' 0 ') = 2 osv. Som gir oss det betydelige antallet som skal hentes fra den gitte inngangsnummer.

  • Til slutt er utgangen vi får fra funksjonen et legitimt heltall som vi konverterte fra den gitte inngangsstrengen.

Så som du kan se, kan vi konvertere en hvilken som helst streng til heltall enten ved hjelp av int () -funksjonen eller på vanlig måte.

Jeg håper at du har lært konseptene godt og derfor prøver å være mer nøyaktig, og med dette kommer vi til en slutt på denne artikkelen om å konvertere en streng til int ved hjelp av Python.

Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne String to Integer-opplæringen, så kommer vi tilbake til deg så snart som mulig.

For å få inngående kunnskap om Python sammen med de forskjellige applikasjonene, kan du registrere deg for live med 24/7 support og levetidstilgang.