9-4
classRestaurant():
def__init__(self, name, typ, number_served=0):
self.restaurant_name =name
self.cuisine_type = typ
self.number_served = number_served
defdescribe_restaurant(self):
print("Therestaurant's name is "+self.restaurant_name+".")
print("Therestaurant sell the "+self.cuisine_type+"food.")
self.print_number_served()
defset_number_served(self, num):
self.number_served = num
defincrement_number_served(self, add):
self.number_served += add
defprint_number_served(self):
ifself.number_served == 0:
print("It hasserved nobody.")
else:
print("The numberit has served is "+str(self.number_served)+'.')
defopen_restaurant(self):
print("Therestaurant is open.")
r = Restaurant('Kongfu','Chinese')
r.describe_restaurant()
r.open_restaurant()
r.set_number_served(10)
r.print_number_served()
r.increment_number_served(15)
r.print_number_served()
The restaurant's name is Kongfu.
The restaurant sell the Chinese food.
It has served nobody.
The restaurant is open.
The number it has served is 10.
The number it has served is 25.
9-5
classUser():
def__init__(self, first_name, last_name,**message):
self.first_name = first_name
self.last_name = last_name
self.message={}
self.login_attempts = 0
for key,value in message.items():
self.message[key] = value
defdescribe_user(self):
print("The user'sname is "+self.first_name+' '+self.last_name+'.')
print("Here issome messages about the user:")
for key,value inself.message.items():
print(key+':'+value)
defgreet_user(self):
print("Hello,"+self.first_name+' '+self.last_name)
defincrement_login_attempts(self):
self.login_attempts+=1
defreset_login_attempts(self):
self.login_attempts = 0
u1 = User('John','Smith',age='18')
u1.increment_login_attempts()
print(u1.login_attempts)
u1.increment_login_attempts()
print(u1.login_attempts)
u1.reset_login_attempts()
print(u1.login_attempts)
output:
1
2
0
9-6
classIceCreamStand(Restaurant):
def__init__ (self, name, typ, flavors,number_served=0):
super().__init__(name,typ,number_served)
self.flavors = []
for f in flavors:
self.flavors.append(f)
defshow_flavors(self):
print("Here areits flavors:")
for f inself.flavors:
print(f,end=" ")
flavors = ['a','b','c']
i =IceCreamStand('Kongfu','Chinese',flavors)
i.show_flavors()
output:
Here are its flavors:
a b c
9-8
classPrivages:
def__init__(self,privages):
self.privages = []
for pri in privages:
(self.privages).append(pri)
defshow_privages(self):
print("Here arethe privages:")
for pri inself.privages:
print(pri)
classAdmin(User):
def__init__(self, first_name, last_name,privages, **message ):
super().__init__(first_name,last_name, **message)
self.privages=Privages(privages);
privages = ["can add post","can deletepost","can ban users"]
a = Admin('John','Smith',privages, age='18')
a.privages.show_privages()
output:
Here are the privages:
can add post
can delete post
can ban users
9-14
from random import randint
classDie():
def__init__(self,sides = 6):
self.sides = sides
print("A die with"+str(sides)+" sides has been created.")
defroll_die(self):
print(randint(1,self.sides),end=" ")
r1 = Die()
for i inrange(0,10):
r1.roll_die()
print("")
r2 = Die(10)
for i inrange(0,10):
r2.roll_die()
print("")
r3 = Die(20)
for i inrange(0,10):
r3.roll_die()
output:
A die with 6 sides has been created.
6 4 4 4 6 6 1 4 3 6
A die with 10 sides has been created.
7 9 10 5 3 9 1 1 5 2
A die with 20 sides has been created.
19 11 19 15 9 19 14 16 20 8