python class用法
创建一个名为 Restaurant 的类,其方法 __init__() 设置两个属性:
name 和 type
1、创建一个名为 describe_restaurant() 的方法,前者打印前述两项信息
2、创建一个名为 open_restaurant() 的方法,打印一条消息,指出餐馆正在营业
3、创建一个名为 working_time ()的方法,打印一条消息,指出餐馆营业历史
4、创建一个名为 update_year() 的方法,打印一条消息,更新餐馆营业时间,且更新时间要比原有时间大
5、创建一个名为 increat_years 的方法,打印一条消息,在原有时间的基础之上增加新的营业时间
#!/usr/bin/env python # -*- coding:utf-8 -*- class Restaurant(): def __init__(self,name,type): '''初始化属性name/type和属性years默认值为100''' self.name=name self.type=type self.years=100 def describe_restaurant(self): '''描述餐馆的名称以及类型''' print("the restaurant'name is " + self.name.title() + " it's a " + self.type + " restaurant.") def open_restayurant(self): '''指出餐馆正在营业''' print("the restaurant is working.") def working_time(self): '''指出餐馆营业时间''' print("the restaurant has working " + str(self.years) + "!") def update_year(self,years): '''更新餐馆营业时间,此值只能大于原有时间设置''' if years >= self.years: self.years = years else: print('you can not roll back !') def increat_years(self,time): '''从原有时间基础之上增加新的餐馆营业的时间''' if time >= 0: self.years += time else: print('请输入不小于0的值') #调用 my_restaurant=Restaurant('HAOZAILAI','CHINESE') print(my_restaurant.name.title()) print(my_restaurant.type) my_restaurant.describe_restaurant() my_restaurant.open_restayurant() my_restaurant.working_time() '''直接访问属性修改属性''' # my_restaurant.years=200 '''利用方法修改属性''' my_restaurant.update_year(200) my_restaurant.working_time() my_restaurant.increat_years(10) my_restaurant.working_time()
结果:
Haozailai CHINESE the restaurant'name is Haozailai it's a CHINESE restaurant. the restaurant is working. the restaurant has working 100! the restaurant has working 200! the restaurant has working 210!