USING PYTHON: Create a Python class, Document. Upon initialization, the instances of this class will take in one optional string parameter, initial_thoughts, which defaults to an empty string if not given during instance creation. In addition, the instances of this class will also have the following attributes: Input Format Assume the inputs are user inputs that are valid commands and can access the attributes or invoke a method of the Document instance. Constraints String arguments when creating a Document instance and when invoking the add_words method will be limited to 1000 characters at maximum. Output Format The output will be composed of seven lines with the first 2 lines showing some information about the Document object and the next 5 lines showing the current values of the instance attributes. Sample Input 0 Sample Input 2 essay = Document ("I gotta start with something.") exit essay = Document () essay.add_words ("And I'd climb every mountain") essay.add_words ("And swim every ocean") essay.add_words ("Just to be with you") essay.add_words ("And fix what I've broken") essay.get_grade() essay.get_grade () essay.get_grade() essay.get_grade () essay.get_grade() essay.submit() essay.get_grade () exit Sample Output 0 This Document instance has 4 instance attributes. The class used to create this object has 5 methods and e class attributes. This Document instance has the following stats. 1. word count: 5 2. status: draft 3. grade: awaiting submission 4. number of times the grade was requested before the document was submitted: 0 Sample Input 1 essay = Document ("And I'd climb every mountain") essay.add_words ("And swim every ocean") essay.add_words ("Just to be with you") essay.add_words ("And fix what I've broken") essay.get_grade () essay.get_grade () essay.get_grade () essay.get_grade() essay.get_grade () essay.submit() essay.get_grade() exit Sample Output 2 This Document instance has 4 instance attributes. The class used to create this object has 5 methods and e class attributes. This Document instance has the following stats. 1. word count: 19 2. status: submitted 3. grade: A+ 4. number of times the grade was requested before the document was submitted: 5 Sample Output 1 This Document instance has 4 instance attributes. The class used to create this object has 5 methods and e class attributes. This Document instance has the following stats. 1. word count: 19 2. status: submitted 3. grade: A+ 4. number of times the grade was requested before the document was submitted: 5
Question and test cases given below (see pic):
Code for reference:
class Document:
#TO DO: define the constructor method, __init__ and then initialize values
#def __init__(___, ___):
# initilialize values here
#TO DO: define the method add_words
#def add_words(___, ___):
#TO DO: define the method submit
#def submit(___):
#TO DO: define the method get_grade
#def get_grade(___):
def __str__(self):
#TO DO: Fill in the blanks
document_info = f"This Document instance has _ instance attributes.\n"
document_info += f"The class used to create this object has _ methods and _ class attribute.\n"
document_info += f"This Document instance has the following stats.\n"
#TO DO: Complete document_info by adding more lines below
return document_info
if __name__ == "__main__":
while(True):
command = input()
if command == 'exit':
break
exec(command)
print(essay)
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images