第6篇---Python设计模式之***模式+含代码实现+学习python的赶快进

***模式概念:

      为其他对象提供一种***以控制对这个对象的访问。。 晦涩难懂的官方术语。。。简单来说,就是A和B想通话,必须通过C中间牵线,此时的A和B就都只给C说,C转换给对方。。

案例一:

      我们实现一个简单的保护***来查看和添加用户。。也就是说,有一个敏感信息类,里面可以读用户信息,也可以添加用户信息。。一般人不能之间访问,若想访问必须通过***类。 。***这里做简要的验证,当前用户的访问权限。。。

class SensitiveInfo:
    def __init__(self):
        self.users = ['nick', 'tom', 'ben', 'mike']

    def read(self):       # 无需验证
        print('There are {} users: {}'.format(len(self.users), ' '.join(self.users)))

    def add(self, user):     # 需要验证
        self.users.append(user)
        print('Added user {}'.format(user))

class Info:
    '''SensitiveInfo的保护***'''
    def __init__(self):
        self.protected = SensitiveInfo()
        self.secret = '123456'
    def read(self):
        self.protected.read()

    def add(self, user):
        sec = input("请输入你的密码:")
        self.protected.add(user) if sec == self.secret else print("That's wrong!")

if __name__ == '__main__':
    info = Info()

    while True:
        print('1: 读取用户, 2:添加用户, 3:终止')
        key = input('choose option:')
        if key == '1':
            info.read()
        elif key == '2':
            name = input("添加的用户名:")
            info.add(name)
        elif key == '3':
            exit()
        else:
            print('乱输入个锤子')

         本例中,添加用户时,需要在***这里输入密码进行验证,然后才可以添加, 而读取用户时,无需验证。。

 

全部评论

相关推荐

行云流水1971:你的简历已经有不错的内容基础,但在岗位匹配度、成果量化、逻辑分层上还有优化空间,我结合产品 / 金融科技类岗位偏好帮你调整: 一、现有问题 & 优化方向 信息冗余:课程 / 学生工作与目标岗位关联弱,可精简; 成果颗粒度不足:部分数据缺少 “对比基准”(比如 “效率提升” 没说之前的情况); 岗位标签弱:产品岗核心能力(如需求闭环、PRD 撰写)体现不够突出。 二、优化后简历(以 “金融科技产品岗” 为例) 教育经历 2023.09-2027.06 郑州轻工业大学(公办一本) | 软件工程 | 本科 核心课程:Java 程序设计、数据库原理、Python(匹配产品岗 “技术理解” 需求) 学习成果:专业核心课 90+,获校级一等奖学金; 学生工作:院学生会主席,统筹 6 场校级活动(覆盖 2000 + 人次),锻炼跨部门协作与项目统筹能力。 实习经历
投了多少份简历才上岸
点赞 评论 收藏
分享
白火同学:1、简历可以浓缩成一页,简历简历先要“简”方便HR快速过滤出有效信息,再要“历”用有效信息突出个人的含金量。 2、教育背景少了入学时间~毕业时间,HR判断不出你是否为应届生。 3、如果你的平台账号效果还不错,可以把账号超链接或者用户名贴到对应位置,一是方便HR知道你是具体做了什么内容的运营,看到账号一目了然,二是口说无凭,账号为证,这更有说服力。
面试被问期望薪资时该如何...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务