美文网首页
【python3小白上路系列】练习练习练习(十五)

【python3小白上路系列】练习练习练习(十五)

作者: Charles_DT | 来源:发表于2020-07-21 12:08 被阅读0次

小米办公环境不错不错不错。开始吧。
9-1 餐馆 :创建一个名为Restaurant 的类,其方法init() 设置两个属性:restaurant_name 和cuisine_type 。创建一个名为describe_restaurant() 的方法和一个名为open_restaurant() 的方法,其中前者打印前述两项信息,而后者打印一条消息,指出餐馆正在营业。
根据这个类创建一个名为restaurant 的实例,分别打印其两个属性,再调用前述两个方法。

实现:

class Restaurant():
    def __init__(self,restaurant_name,cuisine_type):
        self.restaurant_name = restaurant_name
        self.cuisine_type = cuisine_type
    #打印信息
    def describe_restaurant(self):
        print("The restaurant name is " + self.restaurant_name)
        print("The cuisine_type is " + self.cuisine_type)

    #餐馆正在营业
    def open_restaurant(self):
        print("The restaurant is openning.")

new_restaurant = Restaurant('KFC','quick_food')
new_restaurant.describe_restaurant()
new_restaurant.open_restaurant()

运行结果:



**9-2 三家餐馆 :根据你为完成练习9-1而编写的类创建三个实例,并对每个实例调用方法describe_restaurant() **
实现:

new_restaurant_1 = Restaurant('Mcdonalds','west_quick_food')
new_restaurant_2 = Restaurant('Bishengke','west_food')
new_restaurant_3 = Restaurant('Laoxiangji','chinese_food')

new_restaurant_1.describe_restaurant()
new_restaurant_2.describe_restaurant()
new_restaurant_3.describe_restaurant()

运行结果:


9-3 用户 :创建一个名为User 的类,其中包含属性first_name 和last_name ,还有用户简介通常会存储的其他几个属性。
在类User 中定义一个名为describe_user() 的方法,它打印用户信息摘要;再定义一个名为greet_user() 的方法,它向用户发出个性化的问候。

实现:
class User():
    def __init__(self,first_name,last_name,industry):
        self.first_name = first_name
        self.last_name = last_name
        self.full_name = first_name + last_name
        self.industry = industry

    def describe_user(self):
        print("The name is " + self.full_name)
        print("The industry is " + self.industry)

    def greet_user(self):
        print("Hello, " + self.full_name + "!")

user_1 = User('Haoran','Chen','IT')
user_2 = User('Ying','Zhang','Art')

user_1.describe_user()
user_1.greet_user()

user_2.describe_user()
user_2.greet_user()

运行结果:


9-4 就餐人数 :在为完成练习9-1而编写的程序中,添加一个名为number_served 的属性,并将其默认值设置为0。根据这个类创建一个名为restaurant 的实例;打印有多少人在这家餐馆就餐过,然后修改这个值并再次打印它。
添加一个名为set_number_served() 的方法,它让你能够设置就餐人数。调用这个方法并向它传递一个值,然后再次打印这个值。
添加一个名为increment_number_served() 的方法,它让你能够将就餐人数递增。调用这个方法并向它传递一个这样的值:你认为这家餐馆每天可能接待的就
餐人数。

实现:

class Restaurant():
    def __init__(self,restaurant_name,cuisine_type,number_served=0):
        self.restaurant_name = restaurant_name
        self.cuisine_type = cuisine_type
        self.number_served = number_served
    #打印信息
    def describe_restaurant(self):
        print("The restaurant name is " + self.restaurant_name)
        print("The cuisine_type is " + self.cuisine_type)

    #餐馆正在营业
    def open_restaurant(self):
        print("The restaurant is openning.")

    #设置有多少人来过餐馆
    def set_number_served(self):
        self.number_served = int(input("Please input the number of meals: "))
        return self.number_served

new_restaurant_1 = Restaurant('KFC','west_quick_food',512)
print("There are " + str(new_restaurant_1.number_served) + ' in the restaurant.')

运行结果:



**9-5 尝试登录次数 :在为完成练习9-3而编写的User 类中,添加一个名为login_attempts 的属性。编写一个名为increment_login_attempts() 的方法,它将属性login_attempts 的值加1。再编写一个名为reset_login_attempts() 的方法,它将属性login_attempts 的值重置为0。

根据User 类创建一个实例,再调用方法increment_login_attempts() 多次。打印属性login_attempts 的值,确认它被正确地递增;然后,调用方
法reset_login_attempts() ,并再次打印属性login_attempts 的值,确认它被重置为0。**
实现:

class User():
    def __init__(self,first_name,last_name,industry,login_attempts):
        self.first_name = first_name
        self.last_name = last_name
        self.full_name = first_name + last_name
        self.industry = industry
        self.login_attempts = login_attempts

    def describe_user(self):
        print("The name is " + self.full_name)
        print("The industry is " + self.industry)

    def greet_user(self):
        print("Hello, " + self.full_name + "!")

    def increment_login_attempts(self):
        self.login_attempts += 1
        return self.login_attempts


    def reset_login_attempts(self):
        self.login_attempts = 0
        return self.login_attempts

new_user = User('dt','chen','haiyou',0)
attempts = new_user.increment_login_attempts()
print(attempts)
attempts = new_user.increment_login_attempts()
print(attempts)
attempts = new_user.increment_login_attempts()
print(attempts)
attempts = new_user.reset_login_attempts()
print(attempts)

运行结果:


相关文章

网友评论

      本文标题:【python3小白上路系列】练习练习练习(十五)

      本文链接:https://www.haomeiwen.com/subject/ccgbkktx.html