V tomto tutoriálu se naučíme způsoby převodu řetězce na celé číslo v Pythonu-
Než budeme pokračovat, podívejme se na příklad -
a='Learning Python is fun' b= 20 #Displaying the type of a and b print(type(a)) print(type(b))
Výstup:
Ve výše uvedeném příkladu jsme deklarovali proměnné 'a' a 'b' s řetězcem a celočíselnou hodnotou.
jméno města v usa
Jejich datové typy můžeme ověřit pomocí typ().
Vyvstává zde otázka, proč potřebujeme převádět řetězec na celé číslo.
Následující program ilustruje totéž
value_a = '100' value_b = '26' res = value_a * value_b print('The multiplication of val_a and val_b gives: ',res)
Výstup:
res = value_a * value_b TypeError: can't multiply sequence by non-int of type 'str'
Protože generuje tento typ chyby, je to důvod, proč musíme převést hodnoty řetězce na celá čísla, abychom mohli snadno pokračovat v operacích.
Je čas podívat se na první program, který demonstruje převod řetězce na celé číslo.
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))
Výstup:
nahradit řetězec java
17
Vysvětlení:
Podívejme se na vysvětlení výše uvedeného programu-
- Prvním krokem je deklarace proměnné 'a' s hodnotou řetězce.
- Poté jsme zkontrolovali jeho datový typ pomocí typ().
- Pro převod řetězce na celé číslo jsme použili int() a poté zkontroloval jeho typ.
- Nyní jsme operovali s proměnnou 'a' přidáním 10 k ní.
- Nakonec se výsledná hodnota zobrazí na výstupu.
Přístup-2
V dalším příkladu použijeme nepřímý přístup převodu řetězce na celé číslo.
Následující program ukazuje, jak to lze provést -
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)
Výstup:
The sum of value_a and value_b is 126.0
Vysvětlení:
konečný automat
Pojďme pochopit, co jsme udělali ve výše uvedeném programu -
- Prvním krokem je deklarace dvou proměnných 'value_a' a 'value_b' s hodnotou řetězce.
- Poté jsme zkontrolovali jejich datový typ pomocí typ().
- Pro převod řetězce na celé číslo jsme použili plovák() pro převod řetězce na plovoucí hodnotu.
- V dalším kroku převedeme hodnotu řetězce 'value_b' na celé číslo.
- Nyní jsme přidali 'value_a' a 'value_b' a vytiskli jejich součet.
- Nakonec se výsledná hodnota zobrazí na výstupu.
Přístup-3:
V posledním programu probereme ještě jeden scénář převodu řetězce na int v Pythonu.
Zde uvidíme, jak můžeme převést číslo přítomné jako řetězcovou hodnotu na základ 10, když je na různých základech.
Následující program ilustruje totéž
kajal aggarwal
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))
Výstup:
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
Vysvětlení:
Je čas podívat se na vysvětlení výše uvedeného programu.
- V prvním kroku jsme deklarovali hodnotu proměnné.
- Protože výstup bude vždy v základu 10, poskytli jsme různé základní hodnoty uvnitř int().
- Základní hodnoty, které jsme zde vzali, jsou 10, 8 a 6.
- Při spuštění programu se zobrazí očekávaný výstup.
Závěr
V tomto tutoriálu jsme se naučili různé způsoby převodu řetězce na hodnotu int.