Získávání znaků z čísel v Pythonu
Pojďme se podívat na případ, kdy chceme sečíst všechny číslice nějakého čísla. Pokud k nim přistoupíme přes indexy jako ke řetězci, dostaneme chybu:
num = 123
print(num[0] + num[1]) # vypíše chybu
Abychom se vyhnuli chybě, je nejprve nutné převést číslice na řetězce. Poté potřebný řetězcový znak znovu převést na číselný typ:
txt = '123'
print(txt[0] + txt[1]) # vypíše '12' - sečte jako řetězce
Jak vidíte, znaky našeho řetězce jsou také
řetězci a sčítají se jako řetězce.
Řekněme, že je chceme sečíst jako čísla. K
tomu na každý znak řetězce aplikujeme
funkci int:
num = 123
txt1 = str(num)[0]
txt2 = str(num)[1]
res = int(txt1) + int(txt2)
print(res) # vypíše 3
Je dáno číslo:
tst = 123
Najděte součet číslic tohoto čísla.
Je dáno číslo:
tst = 4567
Sečtěte první dvě číslice. A poté od
výsledného výsledku odečtěte poslední
číslici čísla 4567.