Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Programming Exercise #3 Page 505 (Person and Customer classes): a.Name the first

ID: 3823911 • Letter: P

Question

Programming Exercise #3 Page 505 (Person and Customer classes):

a.Name the first Python file person.py. This file will define the Person and Customer classes. Write get and set methods for all data attributes.

b.Name the second Python file person_demo.py. This file will create a Customer object, ask for all input information, and display the attributes.

c.In addition to the requirements, write a function in the Person and Customer classes called speak(self). When a Person object calls this function, the program will display “I am a person.” When a Customer calls this function, the program will display “I am a customer.” Write a function in the demo program that calls the speak function to identify the customer calling it.

d.The mailing list attribute is Boolean, so be sure to set it to true or false.

An example of what your program interaction might look like is below. It does not have to be exactly like this, as long as it works correctly:

Explanation / Answer

person.py

class Person:
def __init__(self, name, address, telephone, email):
self.__name = name
self.__address = address
self.__telephone = telephone
self.__email = email

def set_name(self, name):
self.__name = name

def set_address(self, address):
self.__address = address

def set_telephone(self, telephone):
self.__telephone = telephone

def set_email(self, email):
self.__email = email

def get_name(self):
return self.__name

def get_address(self):
return self.__address

def get_telephone(self):
return self.__telephone

def get_email(self):
return self.__email
  
def speak(self):
print("I am a person")

class Customer(Person):
def __init__(self, name, address, telephone, mail, mailing, number):
Person.__init__(self, name, address, telephone, mail)
self.mailing = True if mailing == 'Y' else False
self.__mail = mail
self.__number = number

def set_mail(self, mail):
self.__mail = mail

def set_number(self, number):
self.__number = number

def get_mail(self):
return self.__mail

def get_number(self):
return self.__number

def mailList(self, mail):
if self.mailing == True:
return"On the mailing list"
else:
return"Not on the mailing list"

def speak(self):
print("I am a customer")

def __str__(self):
return " Name: {} Address: {} telephone: {} Email: {} Mail: {} Number: {}".
format(self.get_name(), self.get_address(),
self.get_telephone(), self.get_email()
, self.mailList(self.get_mail()),self.get_number())

person_demo.py

from person import Person, Customer

customer = Customer.Customer('Josh', 'Long st, Dallas TX',
'555-987-1549','adsf@asd.com','Y','1153')

name = input("Enter name: ")
address = input("Enetr address: ")
telephone = input("Enter telephne")
mail = input("Enter email: ")
mailing = input("Subscribe to mail? (Y/N): ")
number = input("Enter number: ")

customer = Customer(name, address, telephone, mail, mailing, number)

#Cosde link: https://goo.gl/TjUk9j