Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Python: Lines One way to measure the complexity of a program is to count its number of lines of codeLinks to an external site. (
Python: Lines
One way to measure the complexity of a program is to count its number of lines of codeLinks to an external site. LOC excluding blank lines and comments. For instance, a program like
# Say hello
name inputWhats your name?
printfhelloname
has just two lines of code, not four, since its first line is a comment, and its second line is blank ie just whitespace Thats not that many, so odds are the program isnt that complex. Of course, just because a program or even function has more lines of code than another doesnt necessarily mean its more complex. For instance, a function like
def isevenn:
if n :
return True
else:
return False
isnt really twice as complex as a function like
def isevenn:
return n
even though the former has more than twice as many lines of code. In fact, the former might arguably be simpler if its easier to read! So lines of code should be taken with a grain of saltLinks to an external site..
Even so implement a program that counts the lines of a file, and outputs the number of lines of code in that file, excluding comments and blank lines. If the user does not specify exactly one commandline argument, or if the specified files name does not end in py or if the specified file does not exist, the program should instead exit via sysexit.
Assume that any line that starts with # optionally preceded by whitespace, is a comment. A docstringLinks to an external site. should not be considered a comment. Assume that any line that only contains whitespace is blank.
Additionally, your program must include:
comments with your name, date, program name, and program purpose.
a main function with if namemain: code. See this tutorial from module
Hints
How to Test
Heres how to test your code manually:
Run your program with python LastNameFirstInitialLines.py Your program should exit with sysexit and provide an error message:
Too few commandline arguments
Create two python programs, hello.py and goodbye.py Run python LastNameFirstInitialLines.py hello.py goodbye.py Your program should exit with sysexit and provide an error message:
Too many commandline arguments
Create a text file called invalidextension.txt Run your program with python LastNameFirstInitialLines.py invalidextension.txt Your program should exit with sysexit and provide an error message:
Not a Python file
Run your program with python LastNameFirstInitialLines.py nonexistentfile.py Assuming nonexistentfile.py doesnt exist, your program should exit with sysexit and provide an error message:
File does not exist
Create additional python programs which vary in complexity: create some with comments, some docstrings, and some whitespace. For each of these files run python LastNameFirstInitialLines.py FILENAME where FILENAME is the name of the file. Lines.py should output the number of lines, excluding comments and whitespace, present in the given file.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started