Python从入门到实践第九章-类
9-1
class Restaurant():
def __init__(self,restaurant_name,cuisine_type):
self.restaurant_name = restaurant_name
self.cuisine_type = cuisine_type
def describe_restaurant(self):
print(self.restaurant_name.title())
print(self.cuisine_type.title())
def open_restaurant(self):
print("The restaurant is opening")
restaurant = Restaurant(‘quanjude‘,‘kaoya‘)
restaurant.describe_restaurant()
restaurant.open_restaurant()9-2略
9-3 数字实参不加引号 好像是这样的。。因为报了错
class User():
def __init__(self, first_name, last_name,age):
self.first_name = first_name
self.last_name = last_name
self.age = age
def describe_user(self):
print(‘Name: ‘ +self.last_name + self.first_name+ ‘ age : ‘ + str(self.age) )
def greet_user(self):
print(‘Hello! ‘ + self.last_name + self.first_name)
user_a = User(‘xiangnai‘, ‘taonaimu‘,‘22‘)
user_b = User(‘yongmei‘, ‘shentian‘,‘23‘)
user_a.describe_user()
user_b.describe_user()
user_a.greet_user()
user_b.greet_user()9-4 写95的时候发现这个题没看到后面的 不过和95差不多不补了
class Restaurant():
def __init__(self,restaurant_name,cuisine_type):
self.restaurant_name = restaurant_name
self.cuisine_type = cuisine_type
self.number_served=0
def describe_restaurant(self):
print(self.restaurant_name.title())
print(self.cuisine_type.title())
def open_restaurant(self):
print("The restaurant is opening")
def read_serve_number(self):
print("The numer restanrant serverd is " +
str(self.number_served))
restaurant = Restaurant(‘restaurant‘,‘aaa‘)
restaurant.describe_restaurant()
restaurant.read_serve_number()
restaurant.number_served = 20
restaurant.read_serve_number()
输出:
Restaurant
Aaa
The numer restanrant serverd is 0
The numer restanrant serverd is 209-5
class User():
def __init__(self, first_name, last_name,age):
self.first_name = first_name
self.last_name = last_name
self.age = age
self.login_attemps = 0
def describe_user(self):
print(‘Name: ‘ +self.last_name + self.first_name+ ‘ age : ‘ + str(self.age) )
def greet_user(self):
print(‘Hello! ‘ + self.last_name + self.first_name)
def increment_login_attemps(self):
self.login_attemps += 1
def read_login(self):
print("Now the number of people logining is " + str(self.login_attemps))
def reset_login(self):
self.login_attemps = 0
user_a = User(‘san‘,‘zhang‘,‘20‘)
user_a.increment_login_attemps()
user_a.increment_login_attemps()
user_a.increment_login_attemps()
user_a.increment_login_attemps()
user_a.read_login()
user_a.reset_login()
user_a.read_login()
输出:
Now the number of people logining is 4
Now the number of people logining is 09-6
class Restaurant():
def __init__(self,restaurant_name,cuisine_type):
self.restaurant_name = restaurant_name
self.cuisine_type = cuisine_type
def describe_restaurant(self):
print(self.restaurant_name.title())
print(self.cuisine_type.title())
def open_restaurant(self):
print("The restaurant is opening")
class IceCreamStand(Restaurant):
def __init__(self,restaurant_name,cuisine_type):
super().__init__(restaurant_name,cuisine_type)
self.flavors = []
def set_flavors(self,flavors):
self.flavors = flavors
def describe_flavors(self):
print("This is the flavors:" + str(self.flavors))#这里一开始没加str报错 can only concatenate str (not "list") to str 不懂为啥
Newres = IceCreamStand(‘quanjude‘,‘kaoya‘)
Newres.set_flavors([‘apple‘,‘orange‘,‘banana‘])
Newres.describe_flavors()
输出:
This is the flavors:[‘apple‘, ‘orange‘, ‘banana‘]9-7 看别人的学了一手 end=‘‘, 可以继续后面print的内容 挺好用
class User():
def __init__(self, first_name, last_name,age):
self.first_name = first_name
self.last_name = last_name
self.age = age
self.login_attemps = 0
def describe_user(self):
print(‘Name: ‘ +self.last_name + self.first_name+ ‘ age : ‘ + str(self.age) )
def greet_user(self):
print(‘Hello! ‘ + self.last_name + self.first_name)
def increment_login_attemps(self):
self.login_attemps += 1
def read_login(self):
print("Now the number of people logining is " + str(self.login_attemps))
def reset_login(self):
self.login_attemps = 0
class Admin(User):
def __init__(self, first_name, last_name, age):
super().__init__(first_name, last_name, age)
self.privileges = [‘can add post‘, ‘can delete post‘, ‘can ban user‘]
def show_privileges(self):
print(‘管理员权限有:‘, end=‘‘)
for privilege in self.privileges:
print(privilege + ‘,‘, end=‘ ‘)
admin = Admin(‘San‘, ‘Zhang‘, ‘20‘)
admin.show_privileges()
输出:
管理员权限有:can add post, can delete post, can ban user,9-8 略 编写一个类,然后admin中 self.pr... = pr...()
9-9
def upgrade_battery(self):
if self.battery_size!=85:
self.battery_size=859-14
from random import randint
class Die():
def __init__(self,sides=6):
self.sides = sides
def roll_die(self):
print(randint(1,self.sides))
die_six = Die(6)
for i in range(10):
die_six.roll_die()
die_ten = Die(10)
for i in range(10):
die_ten.roll_die()
die_20 = Die(20)
for i in range(10):
die_20.roll_die()有点3分钟的感觉了。。要认真一点。
相关推荐
zhuquan0 2020-05-25
class Singleton: def __new__: # 关键在于这,每一次实例化的时候,我们都只会返回这同一个instance对象 if not hasattr: cls.instance =
lhxxhl 2020-05-16
PHP学习笔记 2020-05-07
DCXabc 2020-05-01
bcbeer 2020-05-02
fly00love 2020-03-08
liusarazhang 2020-03-06
zhuxianfeng 2020-03-03
Kwong 2020-03-01
ladysosoli 2020-03-01
liugan 2020-02-25
Dimples 2020-02-14
wangqing 2020-02-13
fanhuasijin 2020-02-03
文山羊 2020-02-01