Kā konvertēt virkni uz veselu skaitli, izmantojot Python

Šis raksts sniegs jums detalizētas un visaptverošas zināšanas par to, kā virkni dažādos veidos pārveidot par veselu skaitli, izmantojot piemērus.

Šajā tēmā mēs uzzināsim par to, kā pārveidot virkni uz veselu skaitli ar iebūvētu datu tipu un bez tā. Mēs zinām, ka virkne ir rakstzīmju kopa, kas sakārtota secīgi, ievietojot pēdiņās, un vesels skaitlis ir skaitlis bez cipariem aiz komata un nav pievienots jebkura veida pēdiņām.

Virkne līdz veselam skaitlim pitons





Bet, kad rodas jautājums par to, kā pārveidot vienu datu tipu citā, Python nodrošina ērtu veidu, kā pārveidot viens otru. Šajā gadījumā mēs redzam, kā mēs varam pārveidot virkni par veselu skaitli šādā secībā:

Iebūvēto datu tipu izmantošana



Pieņemsim, ka kāda iemesla dēļ es no lietotāja ņemu ievadi, Python to paņem un atdod kā pašu virkni. Citiem vārdiem sakot, pat ja kāds ievada skaitli kā ievadi, Python to atgriež kā virkni.

name = input ('Kāds ir jūsu vārds:') print (name) print (type (name)) age = input ('What is your age:') print (age) print (type (age))

Izeja:

Kā tevi sauc: Tyra



Tyra

Kāds ir jūsu vecums: 20

divdesmit

Tātad redzat, ka ievadītā vārda un vecuma tips ir “Stīgas”.

Pieņemsim, ka, ja vecumam vēlamies pievienot 5, mēs rīkosimies šādi:

name = input ('Kāds ir jūsu vārds:') print (name) print (type (name)) age = input ('What is your age:') print (age) print (type (age)) print (age + 5)

Izeja:

dziļa klonēšana un sekla klonēšana java

Kā tevi sauc: Tyra

Tyra

Kāds ir jūsu vecums: 20

nosaukumvietas c ++

divdesmit

Traceback (pēdējais zvans pēdējais):

Fails 'C: /Users/prac.py', 9. rindiņa, iekš

drukāt (vecums + 5)

TypeError: jābūt str, nevis int

Vecumam nevar pievienot 5, jo vecums ir virknes tips, un mēs nevaram veikt tiešu matemātiku ar virknēm. Tāpēc mums ir jāmaina vecums uz veselu skaitli, jo mēs esam ņēmuši vecumu kā ievadi un Python atgriež to kā virkni.

Tādējādi.

name = input ('Kāds ir jūsu vārds:') print (name) print (type (name)) age = input ('What is your age:') print (age) print (type (age)) age = int ( vecums) druka (vecums + 5)

Izeja:

Kā tevi sauc: Tyra

Tyra

Kāds ir jūsu vecums: 20

divdesmit

25

Parasts veids

Pieņemsim, ka mēs nevēlamies izmantot iebūvēto funkciju int (), lai pārveidotu virkni par veselu skaitli.Tāpēc mums ir jāizmanto tradicionālā veidā konvertēt.

Šeit ir vienkāršs veids, kā pāriet uz konvertēšanu, neizmantojot int ().

kā izmantot split metodi Java
'' '' 123 '-> 123' -12332 '-> -12332' 'def str_to_int (input_str): output_int = 0, ja input_str [0] ==' - ': start_idx = 1 is_negative = Patiesībā cits: start_idx = 0 is_negative = Nepatiesa i diapazonā (start_idx, len (input_str)): vieta = 10 ** (len (input_str) - (i + 1)) cipars = ord (input_str [i]) - ord ('0') output_int + = vieta * cipars, ja ir_negatīvs: return -1 * output_int else: return output_int s = '554' x = str_to_int (s) print (type (x)) s = '123' print (str_to_int (s)) s = “-123” druka (str_to_int (s))

Izeja:

123. lpp

-123

  • Pirmkārt, mēs pārbaudīsim, vai lietotāja norādītajā ciparā ir vai nav mīnus zīme, t.i., vai tas ir negatīvs skaitlis.Ja tā atrodas mīnus zīmes pirmajā pozīcijā, mēs sākam konvertēšanu no otrās pozīcijas, kurā ir skaitļi.

  • Jebkuru skaitli, teiksim, 123, var ierakstīt formā -10 ** 2 * 1 + 10 ** 1 * 2 + 10 ** 0 * 3

  • Līdzīgi mēs sadalām katru ievades numuru, izmantojot vārds (arguments) .

  • ord (‘0’) atgriež 48, ord (‘1’) atgriež 49 utt.

  • Šeit mēs izmantojam loģiku, ka ord ('1') - ord ('0) = 1, ord (' 2 ') - ord (' 0 ') = 2 utt., Kas dod mums nozīmīgo skaitli, kas jāiegūst no dotā ievades numurs.

  • Visbeidzot, rezultāts, ko iegūstam no funkcijas, ir likumīgs vesels skaitlis, kuru mēs pārveidojām no norādītās ievades virknes.

Tātad, kā redzat, mēs varam pārveidot jebkuru virkni par veselu skaitli, izmantojot funkciju int () vai ar parasto metodi.

Es ceru, ka jūs labi iemācījāties jēdzienus un tādējādi izmēģināt to precīzāk, un līdz ar to mēs esam nonākuši šī raksta beigās par virknes pārveidošanu uz int, izmantojot Python.

Vai mums ir jautājums? Lūdzu, pieminējiet to šīs apmācības String to Integer komentāru sadaļā, un mēs sazināsimies ar jums pēc iespējas ātrāk.

Lai iegūtu padziļinātas zināšanas par Python kopā ar dažādām lietojumprogrammām, varat reģistrēties tiešraidē ar diennakts atbalstu un piekļuvi mūža garumā.