目录
1.函数
1.函数的定义
2.输入参数与输出参数的类型
3.输入和输出多个参数
1.普通参数
2.含有任意数量的参数
3.关键字参数
4.普通参数与多个参数的结合
2.类
1.类的定义
2.类的实例化
3.继承
1.函数
1.函数的定义
def 函数名(输入参数):
''' 文档字符串 '''
函数体
return 输出参数
文档字符串用来说明函数的作用
函数体就是实现功能的代码
return可有可无,看是否需要返回内容
2.输入参数与输出参数的类型
函数的输入参数与输出参数均可以为任意的变量类型
该节内容以一个输入参数和一个输出参数为例
def Output(v):
'''返回输入的内容'''
return v
print(Output('str'))
print(Output(11.0))
print(Output([1,2,3]))
结果为
3.输入和输出多个参数
1.普通参数
输入若干个参数,输出若干个参数
def jiajian(m,n):
'''返回两个数的和与差'''
return m+n,m-n
a,b=jiajian(3,4)
print(a,b)
结果为
2.含有任意数量的参数
上一篇文章有介绍到,即 *xxxxx,类似于C语言中的*型变量
def Output(*arg):
'''返回输入的内容'''
return arg
print(Output(1,[2,3]))
结果为
要注意的是返回的时候是arg而不是*arg
3.关键字参数
关键字参数允许在函数调用时使用参数名来指定参数,而不必严格按照函数定义中参数的顺序。
结果为
这里涉及到了参数的默认值,即message='hello'
也涉及到了关键字的调用,可以不安顺序调用,但是要指明关键字
4.普通参数与多个参数的结合
def Output(v,*arg):
'''返回输入的内容'''
return v,arg
a,*b=Output(1,[1,2],3)
print(a)
print(b)
结果为
2.类
类定义了一种对象的属性和方法,可以创建多个具有相同属性和方法的对象。
一个类包含一个__init__方法 + 很多自定义方法, __init__特殊方法前后均有两个下划线,每一个类中都必须包含此方法。当创建一个类的实例时,__init__
方法会自动被调用。
1.类的定义
class Counter:
'''一台可以加减的计算器'''
def __init__(self, a, b):
'''初始化方法,接收两个参数a和b,并将它们赋值给实例的属性'''
self.a = a
self.b = b
def add(self):
'''加法方法,返回a和b的和'''
return self.a + self.b
def sub(self):
'''减法方法,返回a和b的差'''
return self.a - self.b
此外类的定义中也可以有默认值,和函数类似,可以改变
2.类的实例化
类的实例化是指根据类的定义创建类的实例(也称为对象)。实例化类的过程涉及使用类作为模板,根据类的定义创建一个具体的对象。要实例化类,可以使用类的名称后跟括号()
来调用类。这将创建一个类的实例,也称为对象。可以将类的实例赋值给一个变量,以便后续使用。
co1=Counter(3,4)#实例化一个类,为co1
print(co1.add(),co1.sub())
结果为
3.继承
允许一个类从另一个类继承属性和方法,被继承的类称为父类或基类,继承属性和方法的类称为子类或派生类。子类可以获得父类的属性和方法,并可以添加自己的属性和方法,或者重写父类的方法。
以上面的Counter类为例,我们定义一个更高级的类,在此基础上加一个乘法和除法。
class CounterNew(Counter): #指明父类
'''一台可以加减的计算器'''
def __init__(self, a, b):
'''初始化方法,接收两个参数a和b,并将它们赋值给实例的属性'''
super().__init__(a,b) #继承父类的方法
def mul(self):
'''加法方法,返回a和b的和'''
return self.a * self.b
def div(self):
'''减法方法,返回a和b的差'''
return self.a / self.b
对其实例化
coun=CounterNew(3,4)
print(coun.add(),coun.sub(),coun.mul(),coun.div())
结果为