Python-streng til Int: Sådan konverteres en streng til et heltal i Python

I modsætning til mange andre programmeringssprog derude skriver Python ikke implicit heltal (eller flyder) til strenge, når du sammenkæder dem til strenge.

Heldigvis har Python en praktisk indbygget funktion, str()der konverterer det argument, der sendes til et strengformat.

Den forkerte måde at konvertere en streng til et heltal i Python

Programmører, der kommer fra andre programmeringssprog, kan forsøge at udføre følgende strengkombination, hvilket vil give en fejl:

age = 18 string = "Hello, I am " + age + " years old"

Du kan køre denne kode på repl.it.

Fejlen, der vises, er:

Traceback (most recent call last): File "python", line 3, in  TypeError: must be str, not int

Her TypeError: must be str, not intangiver, at heltal først skal konverteres til en streng, før det kan sammenkædes.

Den korrekte måde at konvertere en streng til et heltal i Python

Her er et simpelt sammenkædningseksempel:

age = 18 print("Hello, I am " + str(age) + " years old") # Output # Hello, I am 18 years old

Du kan køre denne kode på repl.it.

Sådan udskrives 1 2 3 4 5 6 7 8 9 10ved hjælp af en enkelt streng:

result = "" for i in range(1, 11): result += str(i) + " " print(result) # Output # 1 2 3 4 5 6 7 8 9 10

Du kan køre koden på repl.it.

Her er en linje for linje forklaring på, hvordan ovenstående kode fungerer:

  1. Først og fremmest tildeles en tom streng en variabel 'resultat'.
  2. For-sløjfen bruges til at gentage en liste over numre.
  3. Denne liste med tal genereres ved hjælp af rækkefunktionen.
  4. så rækkevidde (1,11) genererer en liste med tal fra 1 til 10.
  5. På hver for loop iteration vil denne 'i' variabel optage værdier fra 1 til 10.
  6. Ved første iteration, når variablen i = 1, så konverterer variablen [resultat = resultat + str (i) + “(mellemrumstegn)”], str (i) 'i', som er et heltal til en strengværdi.
  7. Da i = 1, på den første iteration endelig resultat = 1.
  8. Og den samme proces fortsætter indtil i = 10 og endelig efter det sidste iterationsresultat = 1 2 3 4 5 6 7 8 9 10.
  9. Derfor når vi endelig udskriver resultatet efter for loop, er output på konsollen '1 2 3 4 5 6 7 8 9 10'.

Jeg håber, du har fundet det nyttigt. Glad kodning.