python-16-零基础学python 用类实现登录次数的记录

学习内容:《python编程:从入门到实践》第二版

知识点:

类,特殊函数,编写方法,创建实例,用方法修改类的值

练习内容:

练习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。

我的代码&运行结果:

python 复制代码
class User:
    def __init__ (self,first_name,last_name,age,job,login_attempts):
        self.first_name = first_name
        self.last_name = last_name
        self.age = age
        self.job = job
        self.login_attempts = login_attempts
 
    def describe_user(self):
        print(f"{self.first_name}{self.last_name}\t{self.age}岁\t{self.job}\n登录尝试:{self.login_attempts}次")
 
    def greet_user(self):
        print(f"hello,{self.first_name}{self.last_name},welcome!")

    def increment_login_attempts(self):
        self.login_attempts += 1
        
    def reset_login_attempts(self):
        self.login_attempts = 0
        
 
user1 = User('张','三','18','学生',0)
user1.describe_user()
user1.greet_user()

user1.increment_login_attempts()
user1.increment_login_attempts()
user1.increment_login_attempts()
user1.increment_login_attempts()
user1.increment_login_attempts()
user1.increment_login_attempts()
user1.describe_user()

print("系统重置")
user1.reset_login_attempts()
user1.describe_user()

注意点:

新增的属性要做好与类的关联:self.login_attempts = login_attempts

可以再加一个方法,单独打印尝试登录次数

总结&问题:

这一部分可以用在登录账号,输入密码,密码次数

智能家居每天密码锁开了几次

等等~

累计次数、重置等都可以用。

基础的东西也很实用

相关推荐
花酒锄作田1 天前
使用 pkgutil 实现动态插件系统
python
前端付豪1 天前
LangChain链 写一篇完美推文?用SequencialChain链接不同的组件
人工智能·python·langchain
曲幽1 天前
FastAPI实战:打造本地文生图接口,ollama+diffusers让AI绘画更听话
python·fastapi·web·cors·diffusers·lcm·ollama·dreamshaper8·txt2img
老赵全栈实战1 天前
Pydantic配置管理最佳实践(一)
python
阿尔的代码屋1 天前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
AI探索者2 天前
LangGraph StateGraph 实战:状态机聊天机器人构建指南
python
AI探索者2 天前
LangGraph 入门:构建带记忆功能的天气查询 Agent
python
FishCoderh2 天前
Python自动化办公实战:批量重命名文件,告别手动操作
python
躺平大鹅2 天前
Python函数入门详解(定义+调用+参数)
python
曲幽2 天前
我用FastAPI接ollama大模型,差点被asyncio整崩溃(附对话窗口实战)
python·fastapi·web·async·httpx·asyncio·ollama