Python基础16

作者: 粽子和小恺 | 来源:发表于2020-10-28 06:12 被阅读0次

    第九章:类和对象

    9.1 什么是类

    类是一种用户定义的引用数据类型,也称类类型。每个类包含数据说明和一组操作数据或传递消息的函数。类的实例称为对象。
    类,可以理解为一个箱子,里边封装了一大堆的函数、变量...当你有需要时可以随时调用它们。

    9.2 定义和调用类

    Python中定义一个类:

    class a():
        def b():
            print("粽子和小恺")
    ...
    

    接着我们来看一个极其沙雕的计算器:
    例43:

    #Play section photoelectric/Toys World Science and Technology Department
    class info:
        def andder():
            print("计算加法...")
        def subber():
            print("计算减法...")
        def muller():
            print("计算乘法...")
        def divver():
            print("计算除法...")
        def __init__(*args):
            print("感谢使用我的计算器")
        def __del__(*args):
            print("离开...")
        def error():
            print("请不要乱输入!")
       
    class do:
        def andder(num1,num2):
            print(str(int(num1) + int(num2)))
        def sub(num1,num2):
            print(str(int(num1) - int(num2)))
        def mul(num1,num2):
            print(str(int(num1) * int(num2)))
        def div(num1,num2):
            print(str(int(num1) / int(num2)))
            
    while 1:
        num1 = input("输入第一个数:")
        num2 = input("输入第二个数:")
        user = input("输入运算类型(加/减/乘/除)")
    
        if user == "加":
            info.andder()
            do.andder(num1,num2)
        elif user == "减":
            info.subber()
            do.sub(num1,num2)
        elif user == "乘":
            info.muller()
            do.mul(num1,num2)
        elif user == "除":
           info.divver()
           do.div(num1,num2)
        else:
            info.error()
            break
    

    程序执行如下:

    run
    运行很正常,接着我们来调戏它。
    直接输入info(),调用info类。
    输出:

    感谢使用我的计算器
    离开...

    这样大家也好明白,__init__()方法直接发生于整个类被调用后,而__del__()方法直接发送于整个类调用结束之后。只要有指定的类调用方法(例如info.divver()),就不会触发__init__()方法和__del__()方法。同时也说明了直接调用类并不会触及到里面的方法。

    继续调戏它,直接输入do()来调用一下这个类试试。
    什么也没有发生,安然无事。
    这也说明了不调用类里面需要参数的方法时,不需要传入此参数。

    如何调用类里面的方法,刚才的程序里说的很明白。使用一个点号运算符(.)来调取类里面的方法。
    调用格式如下:

    类名.方法(*参数)

    相关文章

      网友评论

        本文标题:Python基础16

        本文链接:https://www.haomeiwen.com/subject/pkzfvktx.html