Answer:
Here is the Python program.
characters = 0
words = 0
lines = 0
def file_stats(in_file):
global lines, words, characters
with open(in_file, 'r') as file:
for line in file:
lines = lines + 1
totalwords = line.split()
words = words + len(totalwords)
for word in totalwords:
characters= characters + len(word)
file_stats('created_equal.txt')
print("Number of lines: {0}".format(lines))
print("Number of words: {0}".format(words))
print("Number of chars: {0}".format(characters))
Step-by-step explanation:
The program first initializes three variables to 0 which are: words, lines and characters.
The method file_stats() takes in_file as a parameter. in_file is the name of the existing text file.
In this method the keyword global is used to read and modify the variables words, lines and characters inside the function.
open() function is used to open the file. It has two parameters: file name and mode 'r' which represents the mode of the file to be opened. Here 'r' means the file is to be opened in read mode.
For loop is used which moves through each line in the text file and counts the number of lines by incrementing the line variable by 1, each time it reads the line.
split() function is used to split the each line string into a list. This split is stored in totalwords.
Next statement words = words + len(totalwords) is used to find the number of words in the text file. When the lines are split in to a list then the length of each split is found by the len() function and added to the words variable in order to find the number of words in the text file.
Next, in order to find the number of characters, for loop is used. The loop moves through each word in the list totalwords and split each word in the totalwords list using split() method. This makes a list of each character in every word of the text file. This calculates the number of characters in each word. Each word split is added to the character and stored in character variable.
file_stats('created_equal.txt') statement calls the file_stats() method and passes a file name of the text file created_equal.txt as an argument to this method. The last three print() statements display the number of lines, words and characters in the created_equal.txt text file.
The program along with its output is attached.