Obținerea caracterelor dintr-un număr în Python
Să luăm în considerare cazul în care dorim să adunăm toate cifrele unui număr. Dacă încercăm să le accesăm prin indici ca într-un șir de caractere, vom primi o eroare:
num = 123
print(num[0] + num[1]) # va afișa o eroare
Pentru a evita eroarea, trebuie mai întâi să transformăm numărul în șir de caractere. Apoi, caracterul dorit din șir să-l transformăm înapoi în tip numeric:
txt = '123'
print(txt[0] + txt[1]) # va afișa '12' - adună ca șiruri de caractere
După cum vedeți, caracterele șirului nostru
de asemenea sunt șiruri de caractere și se
adună ca atare.
Să presupunem că vrem să le adunăm ca numere.
Pentru aceasta, vom aplica fiecărui caracter
al șirului funcția int:
num = 123
txt1 = str(num)[0]
txt2 = str(num)[1]
res = int(txt1) + int(txt2)
print(res) # va afișa 3
Este dat numărul:
tst = 123
Aflați suma cifrelor acestui număr.
Este dat numărul:
tst = 4567
Adunați primele două cifre. Apoi din
rezultatul obținut scădeți ultima
cifră a numărului 4567.