Merhaba python üzerinde basit bir kod parçacığı oluşturmaya çalışıyordum. Amacım girdi olarak verilen ve herhangi bir noktalama işareti ile bölünmemiş bir sayıyı gerekli yerlerine virgüller koyarak okunaklı hale getirmekti. Şu mantıkla ilerledim, mesela 9 basamaklı veya 10 basamaklı sayı olsun fark etmez, sayıyı bir karakter dizisi gibi düşünürsek sondan her 4. ve 4ün katı olan n. basamakta " , " bulunur ve yüzlük olarak ayrılır.
Aşağıdaki kodda o mantıkla ilerledim ama ilk 4. indekste koyması gereken virgülü koyarken 8. basamakta koyması gereken virgülü bir basamak ileriye koyarak yanlış bir görünüm sergiliyor. Kod sanki ilk seferde doğru çalışırken bir sonraki çalışması gereken yerde evrim geçirmiş gibi geldi bana.
Burada hatalı olan yer neresidir ?
KOD
a = 999888777
a = str(a)
a = a[::-1]
b = list()
count = 0
for i in a:
count += 1
if count % 4 == 0:
b.append(",")
b.append(i)
print(b)
b.reverse()
b = "".join(b)
print(b)