9.2 使用类和实例小结练习

本文介绍了如何在Python中实现餐厅就餐人数统计及用户登录尝试次数的功能。通过定义类`Restruant`来跟踪就餐人数,并提供增加和设置就餐人数的方法。同时,定义了`User`类来记录用户的登录尝试次数,包括增加尝试次数和重置次数的方法。
摘要由CSDN通过智能技术生成
9-4 就餐人数:在为完成练习 9-1 而编写的程序中,添加一个名为 number_served
的属性,并将其默认值设置为 0 。根据这个类创建一个名为 restaurant 的实例;打印有
多少人在这家餐馆就餐过,然后修改这个值并再次打印它。
添加一个名为
set_number_served() 的方法,它让你能够设置就餐人数。调用这个
方法并向它传递一个值,然后再次打印这个值。
添加一个名为
increment_number_served() 的方法,它让你能够将就餐人数递增。

调用这个方法并向它传递一个这样的值:你认为这家餐馆每天可能接待的就餐人数。

class Restruant():

    def __init__(self,restruant_name,cuisine_type,):

        self.restruant_name = restruant_name
        self.cuisine_type = cuisine_type
        self.numbers_served = 0   # jiu can ren shu

    # mian shu can guan xin xi

    def describe_restruant(self):
        print("can guan ming zi: " + self.restruant_name.title() + " , " + self.cuisine_type.title()
            + ", " + str(self.numbers_served) + (" ren tong shi yong can"))

    # ti gong  duo shao ren jiu can

    def set_number_served(self,number_served):
        print("wo men ke yi ti gong " + str(number_served) + " ge zuo wei ")

    # jiu can ren shu di zeng

    def increment_number_served(self,in_num_served):
        self.numbers_served = in_num_served

    # ying ye zhuang tai

    def open_restruant(self):
        print("Zheng zai ying ye")

my_restruant = Restruant("long feng dian","zhong guo cai")
my_restruant.increment_number_served(100)
my_restruant.describe_restruant()
my_restruant.open_restruant()
my_restruant.set_number_served(30)


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,age):
        self.first_name = first_name
        self.last_name = last_name
        self.age = age
        self.login_attempts = 0

    def increment_login_attempts(self,x):
        self.login_attempts = x

    def reset_login_attepmts(self,y):
        self.login_attempts = y


    def describe_user(self):
        print("wo de ming zi shi: " + self.first_name.title() + self.last_name.title() + ", wo de nian ling shi " +
              str(self.age) + " sui. " + "ni yi deng lu " + str(self.login_attempts) + " ci")

    def greet_user(self):

        if self.age < 5:
            print("ni shi yi ge xiao hai")

        elif self.age < 16:
            print("ni shi yi ge qing nian")

        else:
            self.age < 25
            print("ni shi yi ge cheng nian")

make_user = User("li","si",10)
make_user.increment_login_attempts(10)
make_user.increment_login_attempts(20)
make_user.increment_login_attempts(30)
make_user.reset_login_attepmts(0)
make_user.describe_user()
make_user.greet_user()



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值