Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- print('\n')
- print('----------Part E----------')
- print('\n')
- def copy_file(str1:str):
- infile_name = input("Please enter the name of the file to copy: ")
- infile = open(infile_name, 'r')
- outfile_name = input("Please enter the name of the new copy: ")
- outfile = open(outfile_name, 'w')
- if str1 == 'line numbers':
- x = 1
- for line in infile:
- outfile.write("{0:5.0f}: {1:1}".format(x,line))
- x += 1
- if str1 == 'Gutenberg trim':
- exists = False
- for lines in infile:
- if '*** START ' in lines:
- exists = True
- if exists:
- outfile.write(lines)
- if '*** END' in lines:
- exists = False
- if str1 == 'statistics':
- l = 0
- emptyLines = 0
- counter = 0
- lineCharacters = []
- nonEmptyCharacters = []
- book = infile.readlines()
- for lines in book:
- l += 1
- if lines == '\n':
- emptyLines+= 1
- else:
- nonEmptyCharacters.append(len(book[counter]))
- lineCharacters.append(len(book[counter]))
- counter += 1
- lineAverage = float((sum(lineCharacters))/l)
- if emptyLines == 0:
- nonEmptyAverage = lineAverage
- else:
- nonEmptyAverage = float(sum((nonEmptyCharacters))/emptyLines)
- print("{0:0} lines in the list".format(l))
- print("{0:3} empty lines".format(emptyLines))
- print("{0:7.1f} average characters per line".format(lineAverage))
- print("{0:7.1f} average characters per non-empty line".format(nonEmptyAverage))
- else:
- for line in infile:
- outfile.write(line)
- infile.close()
- outfile.close()
- copy_file('line numbers')
- copy_file('Gutenberg trim')
- copy_file('statistics')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement