python的函数与类的定义

目录

1.函数

1.函数的定义

2.输入参数与输出参数的类型

3.输入和输出多个参数

1.普通参数

2.含有任意数量的参数

3.关键字参数

4.普通参数与多个参数的结合

2.类

1.类的定义

2.类的实例化

3.继承


1.函数

1.函数的定义

python 复制代码
def 函数名(输入参数): 
    ''' 文档字符串 ''' 
    函数体 
    return 输出参数 

文档字符串用来说明函数的作用

函数体就是实现功能的代码

return可有可无,看是否需要返回内容

2.输入参数与输出参数的类型

函数的输入参数与输出参数均可以为任意的变量类型

该节内容以一个输入参数和一个输出参数为例

python 复制代码
def Output(v):
    '''返回输入的内容'''
    return v
python 复制代码
print(Output('str'))
print(Output(11.0))
print(Output([1,2,3]))

结果为

3.输入和输出多个参数

1.普通参数

输入若干个参数,输出若干个参数

python 复制代码
def jiajian(m,n):
    '''返回两个数的和与差'''
    return m+n,m-n
a,b=jiajian(3,4)
print(a,b)

结果为

2.含有任意数量的参数

上一篇文章有介绍到,即 *xxxxx,类似于C语言中的*型变量

python 复制代码
def Output(*arg):
    '''返回输入的内容'''
    return arg
print(Output(1,[2,3]))

结果为

要注意的是返回的时候是arg而不是*arg

3.关键字参数

关键字参数允许在函数调用时使用参数名来指定参数,而不必严格按照函数定义中参数的顺序。

结果为

这里涉及到了参数的默认值,即message='hello'

也涉及到了关键字的调用,可以不安顺序调用,但是要指明关键字

4.普通参数与多个参数的结合

python 复制代码
def Output(v,*arg):
    '''返回输入的内容'''
    return v,arg
a,*b=Output(1,[1,2],3)
print(a)
print(b)

结果为

2.类

类定义了一种对象的属性和方法,可以创建多个具有相同属性和方法的对象。

一个类包含一个__init__方法 + 很多自定义方法, __init__特殊方法前后均有两个下划线,每一个类中都必须包含此方法。当创建一个类的实例时,__init__方法会自动被调用。

1.类的定义

python 复制代码
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.类的实例化

类的实例化是指根据类的定义创建类的实例(也称为对象)。实例化类的过程涉及使用类作为模板,根据类的定义创建一个具体的对象。要实例化类,可以使用类的名称后跟括号()来调用类。这将创建一个类的实例,也称为对象。可以将类的实例赋值给一个变量,以便后续使用。

python 复制代码
co1=Counter(3,4)#实例化一个类,为co1
print(co1.add(),co1.sub())

结果为

3.继承

允许一个类从另一个类继承属性和方法,被继承的类称为父类或基类,继承属性和方法的类称为子类或派生类。子类可以获得父类的属性和方法,并可以添加自己的属性和方法,或者重写父类的方法。

以上面的Counter类为例,我们定义一个更高级的类,在此基础上加一个乘法和除法。

python 复制代码
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

对其实例化

python 复制代码
coun=CounterNew(3,4)
print(coun.add(),coun.sub(),coun.mul(),coun.div())

结果为

相关推荐
以卿a38 分钟前
C++ 模板初阶
开发语言·c++
s:10342 分钟前
【框架】参考 Spring Security 安全框架设计出,轻量化高可扩展的身份认证与授权架构
java·开发语言
道不尽世间的沧桑2 小时前
第17篇:网络请求与Axios集成
开发语言·前端·javascript
久绊A2 小时前
Python 基本语法的详细解释
开发语言·windows·python
diemeng11193 小时前
AI前端开发技能变革时代:效率与创新的新范式
前端·人工智能
bin91535 小时前
DeepSeek 助力 Vue 开发:打造丝滑的复制到剪贴板(Copy to Clipboard)
前端·javascript·vue.js·ecmascript·deepseek
Hylan_J5 小时前
【VSCode】MicroPython环境配置
ide·vscode·python·编辑器
软件黑马王子5 小时前
C#初级教程(4)——流程控制:从基础到实践
开发语言·c#
莫忘初心丶5 小时前
在 Ubuntu 22 上使用 Gunicorn 启动 Flask 应用程序
python·ubuntu·flask·gunicorn
闲猫5 小时前
go orm GORM
开发语言·后端·golang