第九章:类和对象
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
程序执行如下:
运行很正常,接着我们来调戏它。
直接输入
info()
,调用info类。输出:
感谢使用我的计算器
离开...
这样大家也好明白,__init__()
方法直接发生于整个类被调用后,而__del__()
方法直接发送于整个类调用结束之后。只要有指定的类调用方法(例如info.divver()
),就不会触发__init__()
方法和__del__()
方法。同时也说明了直接调用类并不会触及到里面的方法。
继续调戏它,直接输入do()
来调用一下这个类试试。
什么也没有发生,安然无事。
这也说明了不调用类里面需要参数的方法时,不需要传入此参数。
如何调用类里面的方法,刚才的程序里说的很明白。使用一个点号运算符(.
)来调取类里面的方法。
调用格式如下:
类名.方法(*参数)
网友评论