PYTHON!!!! Write a program that allows the user to navigate the lines of text in a file. The program should prompt the user for a filename and input the lines of text into a list. The program then enters a loop in which it prints the number of lines in the file and prompts the user for a line number. Actual line numbers range from 1 to the number of lines in the file. If the input is 0, the program quits. Otherwise, the program prints the line associated with that number. An example file and the program input and output is shown below: example.txt Line 1. Line 2. Line 3. Enter the input file name: example.txt The file has 3 lines. Enter a line number [0 to quit]: 2 2 : Line 2. The file has 3 lines. Enter a line number [0 to quit]: 4 ERROR: line number must be less than 3. The file has 3 lines. Enter a line number [0 to quit]: 0 The program works as expected for given input, test 1: Custom Test: Delete file at start Test Contents: import os.path try: os.remove('.test.txt') except OSError: pass assert(not os.path.exists('.test.txt')) Custom Test: Create test file 1 Test Contents: with open('.test.txt', 'w') as e: e.write("""To be, or not to be: that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And by opposing end them? To die: to sleep;""") Test Case: Verify program with test file 1 Input: .test.txt 3 1 0 Output: Enter file name: .test.txt The number of lines in the file is: 5 Enter line number: 3 The slings and arrows of outrageous fortune, Enter line number: 1 To be, or not to be: that is the question: Enter line number: 0 Results: The file has 5 lines The slings and arrows of outrageous fortune, To be, or not to be: that is the question: Custom Test: Delete files at end Test Contents: import os.path try: os.remove('.test.txt') except OSError: pass assert(not os.path.exists('.test.txt')) The program works as expected for given input, test 2: Custom Test: Delete file at start Test Contents: import os.path try: os.remove('.test.txt') except OSError: pass assert(not os.path.exists('.test.txt')) Custom Test: Create test file 2 Test Contents: with open('.test.txt', 'w') as e: e.write("""Battle of Adrianople: Emperor Constantine the Great defeats his rival Licinius near Adrianople, forcing him to retreat to Byzantium. He invades Thrace with a Visgothic force and raids the countryside. This sees Constantine ruling as sole Emperor.""") Test Case: Verify program with test file 2 Input: .test.txt 3 1 0 Output: Enter file name: .test.txt The number of lines in the file is: 1 Enter line number: 3 Results: The file has 1 lines Battle of Adrianople Emperor Constantine Licinius near Adrianople Thrace with a Visgothic sole Emperor Custom Test: Delete files at end Test Contents: import os.path try: os.remove('.test.txt') except OSError: pass assert(not os.path.exists('.test.txt'))
PYTHON!!!!
Write a
An example file and the program input and output is shown below:
example.txt
Line 1.
Line 2.
Line 3.
Enter the input file name: example.txt
The file has 3 lines.
Enter a line number [0 to quit]: 2
2 : Line 2.
The file has 3 lines.
Enter a line number [0 to quit]: 4
ERROR: line number must be less than 3.
The file has 3 lines.
Enter a line number [0 to quit]: 0
The program works as expected for given input, test 1:
Custom Test:
Delete file at start
Create test file 1
Delete files at end
Test Contents:
import os.path
try:
os.remove('.test.txt')
except OSError:
pass
The program works as expected for given input, test 2:
Custom Test:
Delete file at start
Create test file 2
Verify program with test file 2
Input:
.test.txt
3
1
0
Output:
Enter file name: .test.txt
The number of lines in the file is: 1
Enter line number: 3
Results:
Delete files at end

Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 2 images









