Write a class named Person with data attributes for a person's name, address, telephone and email. Next, write a class named Customer that is a subclass of the Person class. The Customer class should have a data attribute for a customer number and a Boolean data attribute indicating whether the customer wishes to be one the mailing list. Demonstrate an instance of the Customer class in a simple program.
I am getting an attibute error.
, line 6, in main
'555-987-1549','adsf@asd.com','Y','1153')
TypeError: __init__() takes 5 positional arguments but 7 were given
I don't completely follow the point of using the boolean expression so maybe someone could explain why it is being used and help me with why I am getting that error.
Heres my code
class Person
:
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
Class Customer
:
import Person
class Customer(Person.Person):
def __init__(self, name, address, telephone, email):
Person.Person.__init__(self, mail, number)
self.mailing = 'Y'== True
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 mailing == True:
return"On the mailing list"
else:
return"Not on the mailing list"
def __str__(self):
return "\nName: {}\nAddress: {}\ntelephone: {}\nEmail: {}\nMail: {}\nNumber: {}".\
format(self.get_name(), self.get_address(),\
self.get_telephone(), self.get_email()\
, self.mailList(self.get_mail()),self.get_number())
customerTest
:
import Customer
def main():
customer = Customer.Customer('Josh', 'Long st, Dallas TX',\
'555-987-1549','adsf@asd.com','Y','1153')
print(customer)
main()