In deze tutorial leren we de manieren om een string naar een geheel getal te converteren in Python-
Laten we een voorbeeld bekijken voordat we verder gaan-
a='Learning Python is fun' b= 20 #Displaying the type of a and b print(type(a)) print(type(b))
Uitgang:
dereferentiewijzer c
In het bovenstaande voorbeeld hebben we de variabelen 'a' en 'b' gedeclareerd met respectievelijk een string en een geheel getal.
We kunnen hun gegevenstypen verifiëren met behulp van type().
De vraag die hier opkomt is waarom we een string naar een geheel getal moeten converteren.
Het volgende programma illustreert hetzelfde
value_a = '100' value_b = '26' res = value_a * value_b print('The multiplication of val_a and val_b gives: ',res)
Uitgang:
res = value_a * value_b TypeError: can't multiply sequence by non-int of type 'str'
Omdat dit dit soort fouten genereert, is dit de reden dat we de tekenreekswaarden naar gehele getallen moeten converteren, zodat we gemakkelijk verder kunnen gaan met de bewerkingen.
Het is tijd om eens te kijken naar het eerste programma dat demonstreert hoe je een string naar een geheel getal converteert.
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))
Uitgang:
17
Uitleg:
Laten we eens kijken naar de uitleg van het bovenstaande programma-
- De eerste stap is het declareren van de variabele 'a' met een stringwaarde.
- Hierna hebben we het gegevenstype gecontroleerd met behulp van type().
- Voor het omzetten van de string naar een geheel getal hebben we gebruikt int() en controleerde vervolgens het type.
- Nu hebben we de variabele 'a' bewerkt door er 10 aan toe te voegen.
- Ten slotte wordt de resulterende waarde weergegeven in de uitvoer.
Benadering-2
In het volgende voorbeeld gaan we voor een indirecte benadering waarbij een string naar een geheel getal wordt geconverteerd.
1 miljoen nummer
Het volgende programma laat zien hoe het gedaan kan worden:
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)
Uitgang:
The sum of value_a and value_b is 126.0
Uitleg:
string in datum
Laten we begrijpen wat we in het bovenstaande programma hebben gedaan-
- De eerste stap is het declareren van de twee variabelen 'value_a' en 'value_b' met een stringwaarde.
- Hierna hebben we hun gegevenstype gecontroleerd met behulp van type().
- Voor het omzetten van de string naar een geheel getal hebben we gebruikt vlot() om de tekenreeks naar een zwevende waarde te converteren.
- In de volgende stap zullen we de tekenreekswaarde van 'value_b' converteren naar een geheel getal.
- Nu hebben we 'waarde_a' en 'waarde_b' toegevoegd en hun som afgedrukt.
- Ten slotte wordt de resulterende waarde weergegeven in de uitvoer.
Aanpak-3:
In het laatste programma bespreken we nog een scenario voor het converteren van string naar int in Python.
Hier zullen we zien hoe we een getal dat als tekenreekswaarde aanwezig is, kunnen converteren naar grondtal 10 wanneer het zich op verschillende bases bevindt.
Het volgende programma illustreert hetzelfde
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))
Uitgang:
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
Uitleg:
Het is tijd om een blik te werpen op de uitleg van het bovenstaande programma.
- In de eerste stap hebben we de waarde van de variabele aangegeven.
- Omdat de uitvoer altijd in grondtal 10 zal liggen, hebben we de verschillende basiswaarden erin vermeld int().
- De basiswaarden die we hier hebben genomen zijn 10, 8 en 6.
- Bij het uitvoeren van het programma wordt de verwachte output weergegeven.
Conclusie
In deze tutorial hebben we de verschillende manieren geleerd om een string naar een int-waarde te converteren.