zoukankan      html  css  js  c++  java
  • 类和对象

    """

    面向对象编程的核心是对象二字,对象时特征和技能的结合体。
    优点:可扩展性强。
    
    缺点:编程的复杂度要高于面向过程。
    
    ````类和对象:
    Python中必须先定义类,然后调用类来产生对象。
    
    ````Python中类的定义:
    类中定义变量使用驼峰体。
    class Oldboy():
        school='oldboy'
    
        def choose_course(self):
            print('is choosing course')
    
    ```定义函数,函数只检测语法,不执行代码,但是定义类的时候,
    类体代码会在类定义阶段就会执行,并且会产生一个类的名称空间,也就是说累的额本身
    其实就是一个容器/名称空间,是用来存放名字的,这是类的用途之一。
    
    ```定义对象
    调用类即可产生对象,调用类的过程,又称为类的实例化。
    
    
    """
    class Oldboy():
        school='oldboy'
    
        def choose_course(self):
            print('is choosing course')
    
    print(Oldboy.__dict__)
    print(Oldboy.__dict__['choose_course'])
    # {'__module__': '__main__', 'school': 'oldboy', 'choose_course': <function Oldboy.choose_course at 0x0000000009E75B70>, '__dict__': <attribute '__dict__' of 'Oldboy' objects>, '__weakref__': <attribute '__weakref__' of 'Oldboy' objects>, '__doc__': None}
    # <function Oldboy.choose_course at 0x0000000009E75B70>
    
    
    try:
        Oldboy.__dict__['choose_course']()
    except Exception as e:
        print('error:',e)
    # error: choose_course() missing 1 required positional argument: 'self'
    
    
    print(Oldboy.__dict__['school'])
    print(Oldboy.school)
    # oldboy
    # oldboy
    
    
    Oldboy.choose_course(1111)
    # is choosing course
    
    print(Oldboy.choose_course)
    print(Oldboy.__dict__['choose_course'])
    # <function Oldboy.choose_course at 0x0000000009E65B70>
    # <function Oldboy.choose_course at 0x0000000009E65B70>
    
    stu1=Oldboy()
    #调用 类会得到一个返回值,该返回值就是类的一个具体存在的对象或实例
    print(stu1.school)
    
    # 实例化Oldboy产生一个stu2的对象,通过对象调用类中的属性和方法
    
    stu2=Oldboy()
    print(stu2.school)
    stu2.choose_course()
  • 相关阅读:
    AtCoDeer and Election Report
    乒乓球
    dp(装箱)
    《非你莫属》面试者现场跟面试官用英文对话,一口流利的英语口语厉害了
    冬天喝酸奶,可以加热吗?冬天喝酸奶,这4个方面要注意
    滑县两个富豪打赌,一人吃了一泡狗屎
    为什么外国富豪都喜欢捐光所有财产
    发的微博有敏感词
    社交网络
    怎么把word中的文字拉细变瘦长
  • 原文地址:https://www.cnblogs.com/ludundun/p/11459359.html
Copyright © 2011-2022 走看看