'I am struggling a little on getting this code to work in python

Now honestly, I think this could be entirely wrong as I don't really know what I am doing and just kinda through some stuff together, so help would be appreciated.

This is the code I got, including starting code that cannot be changed.

# DO NOT CHANGE ANY CODE IN THE MAIN FUNCTION
def main():
    input_file = open('strings.txt', 'r')  # Open a file for reading
    for line in input_file:  # Use a for loop to read each line in the file
        manipulate_text(line)
        print()


def manipulate_text(line):
    # Delete the following line, then implement the function as indicated
    line = line.upper()
    line = line.strip()
    letters = []

    for char in line:
        if char.isalpha():
            if char not in letters.count(line):
                letters[char] = 1
            else:
                letters[char] += 1

    for everyLetter in letters:
        print("{0} {1}".format(everyLetter, letters[everyLetter]))

The .txt file it uses just contain: Csc.565 Magee, Mississippi A stitch in time saves nine.

And these are the instructions I have been given, also in this .count is what needs to be used, as shown in my code.

The manipulate_text() function accepts one string as input. The function should do the following with the string parameter:

⦁ Convert all the letters of the string to uppercase, strip the leading and trailing whitespace, and output the string.

⦁ Count and display the frequency of each letter in the string. Ignore all non-alpha characters.

For example, if this is the contents of strings.txt:

Csc.565 Magee, Mississippi A stitch in time saves nine.

This would be the output of your program:

CSC.565
C 2
S 1

MAGEE, MISSISSIPPI
M 2
A 1
G 1
E 2
I 4
S 4
P 2

A STITCH IN TIME SAVES NINE.
A 2
S 3
T 3
I 4
C 1
H 1
N 3
M 1
E 3
V 1


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source