<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Find a string
Step1:  Implement a basic sub-string counter
Step2:  Check if a string is ascii encoded
Step3:  Solution
<ASSISTANT_TASK:>
Python Code:
s = 'ABCD'
for i in range(0, len(s)):
    print (s[i])
string = 'ABCABDEABCF'
sub_string = 'ABC'
string[5:7]
def output_substring(string, sub_string):
    for i in range(0, len(string)-len(sub_string)+1):
        n = i
        print (string[n:(n+len(sub_string))])
output_substring(string, sub_string)
Explanation: Find a string:
In this challenge, the user enters a string and a substring. You have to print the number of times that the substring occurs in the given string. String traversal will take place from left to right, not from right to left. 
NOTE: String letters are case-sensitive.
Input Format:
The first line of input contains the original string. The next line contains the substring.
Constraints:
1 ≤ len(string) ≤ 200
Each character in the string is an ascii character. 
Output Format:
Output the integer number indicating the total number of occurrences of the substring in the original string. 
Sample Input:
ABCDCDC
CDC
Sample Output:
2
Concept:
Some string processing examples, such as these, might be useful.
There are a couple of new concepts:
In Python, the length of a string is found by the function len(s), where s is the string.
To traverse through the length of a string, use a for loop:
for i in range(0, len(s)):print (s[i])
A range function is used to loop over some length:
range (0, 5)
Here, the range loops over 0 to 4 and 5 is excluded.
Workbook:
End of explanation
def count_substring(string, sub_string):
    count = 0
    for i in range(0, len(string)-len(sub_string)+1):
        if (string[i:(i+len(sub_string))]) == sub_string:
            count+=1
    return count
count_substring(string, sub_string)
Explanation: Implement a basic sub-string counter:
End of explanation
try:
    string.encode('ascii')
    print ('This string is ascii ...')
except:
    print ('This string is not ascii encoded ...')
Explanation: Check if a string is ascii encoded:
End of explanation
def count_substring(string, 
                    sub_string, 
                    verbose = False, 
                    min_string_len =1, 
                    max_string_len=200):
    ascii_encoding = False
    try:
        string.encode('ascii')
        sub_string.encode('ascii')
        ascii_encoding = True
        if verbose: 
            print ('This string is ascii ...')
    except:
        if verbose:
            print ('This string is not ascii encoded ...')
    if len(string)>= min_string_len and len(string)<=max_string_len and ascii_encoding:
        count = 0
        for i in range(0, len(string)-len(sub_string)+1):
            if (string[i:(i+len(sub_string))]) == sub_string:
                count+=1
    return count
count_substring(string, sub_string)
Explanation: Solution:
End of explanation
<END_TASK>