Skip to Main Content
Blog

Get Frequency of Digits in Python

Get Frequency of Digits in Python

Enter number: 141592653589793
1: 2
2: 1
3: 2
4: 1
5: 3
6: 1
7: 1
8: 1
9: 3
def main():
    """
    Counts the frequency of all digits in a number.
    """

    num = int(input("Enter number: "))

    RADIX = 10
    ctr = [0] * RADIX
    if num == 0:
        ctr[0] = 1
    else:
        num = abs(num)
        while num != 0:
            unit = num % RADIX
            ctr[unit] += 1
            num //= RADIX

    for i in range(RADIX):
        if ctr[i] > 0:
            print(f"{i}: {ctr[i]}")


if __name__ == "__main__":
    main()