#!/usr/bin/env python

# Python Script for counting didgets in pi.

# Written January 19, 2018 - Coty R Miller


_piString="3.14159265"


#

# You can feed this script a file of many didgets named "one-million.txt" by removing the line 5

# and removing comment tags from lines 12 and 13.

#


#with open("one-million.txt") as myfile:

#    _piString="".join(line.rstrip() for line in myfile)


_pi=list(_piString)


i=0


#

# Number integers, for holding the tally.

#

_zero=0

_one=0

_two=0

_three=0

_four=0

_five=0

_six=0

_seven=0

_eight=0

_nine=0


_nonNumerical=0


print "Couting Didgits... (", len(_pi), ")"

print ""


#

# This loop reads all didgets and counts them.

#

while i < len(_pi):

    if _pi[i] == "0":       # If number is 0

        _zero = _zero + 1   # Then add one to the tally.

    elif _pi[i] == "1":

        _one = _one + 1

    elif _pi[i] == "2":

        _two = _two + 1

    elif _pi[i] == "3":

        _three = _three + 1

    elif _pi[i] == "4":

        _four = _four + 1

    elif _pi[i] == "5":

        _five = _five + 1

    elif _pi[i] == "6":

        _six = _six + 1

    elif _pi[i] == "7":

        _seven = _seven + 1

    elif _pi[i] == "8":

        _eight = _eight + 1

    elif _pi[i] == "9":

        _nine = _nine + 1

    else:

        _nonNumerical = _nonNumerical + 1 # For else. We'll tally it as a non-number

    i = i + 1

#

# Print the results.

#

print "Results are as follows:"

print "Zero  - ", _zero

print "one   - ", _one

print "two   - ", _two

print "three - ", _three

print "four  - ", _four

print "five  - ", _five

print "six   - ", _six

print "seven - ", _seven

print "eight - ", _eight

print "nine  - ", _nine

print " - - - - - - - - - - - - "

print _nonNumerical, " - Non-Numerical Charecters ignored."

print " - For faster proccessing feed me a file with fewer non-numerical charecters."

print "