Python String v Int: Kako pretvoriti niz v celo število v Pythonu

Za razliko od mnogih drugih programskih jezikov, ki jih obstaja tam, Python celih števil (ali lebdi) implicitno ne vtipka v nize, ko jih povežete v nize.

Na srečo ima Python priročno vgrajeno funkcijo, str()ki bo pretvorjeni argument pretvoril v niz.

Napačen način pretvorbe niza v celo število v Pythonu

Programerji, ki prihajajo iz drugih programskih jezikov, lahko poskusijo narediti naslednje združevanje nizov, kar bo povzročilo napako:

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

To kodo lahko zaženete na repl.it.

Napaka, ki se prikaže, je:

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

Tu TypeError: must be str, not intoznačuje, da je treba celo število najprej pretvoriti v niz, preden ga je mogoče združiti.

Pravilen način pretvorbe niza v celo število v Pythonu

Tu je preprost primer združevanja:

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

To kodo lahko zaženete na repl.it.

Tukaj je opisano, kako tiskati 1 2 3 4 5 6 7 8 9 10z enim samim nizom:

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

Kodo lahko zaženete na repl.it.

Tu je podrobna razlaga, kako deluje zgornja koda:

  1. Najprej je prazen niz dodeljen spremenljivki 'rezultat'.
  2. Zanka for se uporablja za ponovitev seznama številk.
  3. Ta seznam števil je ustvarjen s funkcijo obsega.
  4. tako bo obseg (1,11) ustvaril seznam števil od 1 do 10.
  5. Na vsaki ponovitvi for zanke bo ta spremenljivka 'i' zavzela vrednosti od 1 do 10.
  6. Na prvi ponovitvi, ko je spremenljivka i = 1, nato spremenljivka [rezultat = rezultat + str (i) + “(presledek)”], str (i) pretvori 'i', ki je celoštevilčna vrednost, v vrednost niza.
  7. Ker je i = 1, je na prvi ponovitvi končno rezultat = 1.
  8. In isti postopek se nadaljuje, dokler i = 10 in končno po zadnjem rezultatu ponovitve = 1 2 3 4 5 6 7 8 9 10.
  9. Ko končno izpišemo rezultat po zanki for, je na konzoli izhod '1 2 3 4 5 6 7 8 9 10'.

Upam, da se vam je to zdelo koristno. Veselo kodiranje.