华为云高校联盟活动~Python课程相关题目展示(二)

举报
小Bob来啦 发表于 2021/04/13 22:46:40 2021/04/13
【摘要】 我发现,卷入快速学习的反馈循环之中是件令人兴奋的事情,就像冲浪者热爱冲浪一样,尽管这有时会使你跌倒。不要理解错了,我至今依然害怕跌倒,依然觉得跌倒很痛苦。但我会思考这种痛苦,并明白我将克服这些挫折,而且我学到的东西将主要来自对挫折的反思。[插图]就像长跑者忍耐痛苦去体验“跑步者的愉悦感”一样,我已经基本上走出了为犯错而痛苦的阶段,而是享受从犯错中学习的愉悦。——《原则》上次小编已将华为云第一...

我发现,卷入快速学习的反馈循环之中是件令人兴奋的事情,就像冲浪者热爱冲浪一样,尽管这有时会使你跌倒。不要理解错了,我至今依然害怕跌倒,依然觉得跌倒很痛苦。但我会思考这种痛苦,并明白我将克服这些挫折,而且我学到的东西将主要来自对挫折的反思。[插图]就像长跑者忍耐痛苦去体验“跑步者的愉悦感”一样,我已经基本上走出了为犯错而痛苦的阶段,而是享受从犯错中学习的愉悦。——《原则》

上次小编已将华为云第一节作业的代码分享,作为小白自己多练练还是挺好的。

这里小编准备将相关题目展示出来和大家一起学习,相关代码仅供参考。

第二节是学习类的继承用法,比如子类和父类,以及学习对类经常用到的各种特性。

关于类在代码中表现出来的能力:它可以使用现有类的所有功能,并在无需重新编写原来类的情况下对这些功能进行扩展。类通过继承而创建的新类被称为“子类”或“派生类”,而被继承的类也称之为基类或父类。继承的过程简单描述就是从一般到简单的过程。并且一般情况下,一个子类只能有一个基类,如果要实现多重继承,可以通过多级继承来实现。

第二节也分为了三个小题,第一节是父类和子类,第二节是类的私有化,最后是类的销毁,难度也是逐渐提升,但总体还算简单。
1.父类与子类 

相关知识点:
学会用函数判断父类与子类的关系。

源代码:
    class Father(object):
    
        def __init__(self, name, age):
            self.name = name
            self.age = age
    
    class Uncle(object):
        # 在Uncle类__init__()方法中给属性name,age,weight赋值
        def __init__(self, name, age, weight):
            self.name = name
            self.age = age
            self.weight = weight
    
        # Todo:补全Child类
    class Child(Father):
        # Todo:通过super调用父类的__init__()方法给属性name,age赋值
        def __init__(self, name, age, ageTag):
            super().__init__(name,age)
    # Todo:给本身的属性ageTag(年代标签)赋值
            self.ageTag = ageTag
    # Todo:在Child类中打印输出属性的值
            print("Child:{},{},{}".format(self.name,self.age,self.ageTag))
    
    # Todo:实例化Child对象
    child=Child("Tom",14,"00s")
    
    # Todo:通过isinstance()方法判断该对象是否是Uncle类的实例
    print(isinstance(Child,Uncle))

    2.类的私有化

    相关知识点:

    在实际开发中,对象的某些属性或者方法可能只希望在对象的内部被使用,而不希望在外部被访问到。私有属性就是对象不希望公开的属性。

    在定义属性或者方法时,在属性名或者方法名前面增加两个下划线,定义的就是私有属性或方法;


    源代码:
      # Todo:补全Child类
      class Child:
      # Todo:通过super调用父类的__init__()方法给属性name,age,wieght赋值
          def __init__(self, name, age, wieght):
              self.name = name
              self.age = age
              self.wieght = wieght
              #super(). __init__(name,age,wieght)
      # Todo: 打印输出对象的所有属性
          def printmsg(self):
              print("Child:{},{},{}".format(self.name,self.age,self.wieght))
      # Todo:实例化Child对象
      child=Child("Tom",14,170)
      
      # Todo: 调用printmsg方法,打印输出结果
      child.printmsg()
      3.类的私有方法(与类的私有化大致相同)

      源代码:
        # Todo:补全Child类
        class Child:
        # Todo:通过super调用父类的__init__()方法给属性name,age,wieght赋值
            def __init__(self, name, age, wieght):
                self.name = name
                self.age = age
                self.wieght = wieght
                #super(). __init__(name,age,wieght)
        # Todo: 打印输出对象的所有属性
            def printmsg(self):
                print("Child:{},{},{}".format(self.name,self.age,self.wieght))
        # Todo:实例化Child对象
        child=Child("Tom",14,170)
        
        # Todo: 调用printmsg方法,打印输出结果
        child.printmsg()
        【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
        • 点赞
        • 收藏
        • 关注作者

        评论(0

        0/1000
        抱歉,系统识别当前为高风险访问,暂不支持该操作

        全部回复

        上滑加载中

        设置昵称

        在此一键设置昵称,即可参与社区互动!

        *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

        *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。