函数基础

1|01. 函数的定义

def 函数名(等同于变量名)(): '''对函数的描述信息''' code
  • 函数的定义的特性:函数定义过程,只检测语法,不执行代码。当调用函数,会执行代码

2|02. 定义函数的三种方式

  • 空函数

    def hanshu(): pass
  • 无参函数

    def hanshu(): x = 10 y = 10 print(x>y) #函数中有代码块
  • 有参函数

    def hanshu(x,y): print(x>y) #函数中有代码块

3|03. 函数的调用

函数的调用就是 使用函数

def hanshu(): x = 10 y = 10 print(x>y) #函数中有代码块 hanshu() #函数名加() 调用函数 print(hanshu) #直接打印函数名 :打印结果为函数的内存地址

4|04. 函数的返回值

只要定义了函数,调用函数就有返回值。函数的返回值默认是 None

我们用return来返回函数的返回值 。返回值可以是任意数据类型

def hanshu(x): x = x+10 return x y = hanshu(1) print(y+10) # 打印结果为 21

return 的特性:

  • return 返回的是一个值,如果没有返回值,就默认返回None
  • return会终止函数,不会运行return下面的代码,假设有多个return,当运行了满足条件的return那就不会运行其他return
  • return可以返回多个值,返回值以元组的形式接收

5|05. 函数的参数

5|11.形参(用来接收实参,具有描述意义)

定义函数时产生,在函数名的括号内。

1|0(1)位置形参(和形参没区别)

从左到右依次接收实参

1|0(2)默认形参(形参有一个默认值就是默认形参)

  • 当没有给默认形参传值,就使用默认值,如果给它传值,就使用传进来的值

  • 默认形参只能放在位置形参的后面

5|22. 实参(用来给形参传值,可以为任意数据类型)

在调用函数时的函数名的括号内

1|0(1)位置实参(和实参没区别)

从左到右依次给形参传值,形参有多少,实参就得有多少

1|0(2)关键字实参(就是和定义变量一样,变量名是一个形参名)

  • 按照形参名传值
  • 关键字实参必须放在位置形参后面

5|33. 可变长参数(可以无限长)

下面的可变长形参中 * 后面是一个类似变量名的东西,可以随便写

1|0(1)可变长形参

def hanshu(*lis): # *lis 把所有传过来的所有实参按元组的形式存储, 如果 *lis 的前面存在其他形参,那么 *lis 接收的就是剩下的实参 a,b,c,d,*_ = lis # 以解压缩的方法取出想要的值 print(a,b,c,d)

1|0(2)可变长实参

def hanshu(*lis): print(max(lis)) lt = [1,2,3,4,5,6] res = hanshu(*lt) # * 相当于解压缩,也就是把lt内的元素一个一个取出来传给形参

__EOF__

本文作者BigSun丶
本文链接https://www.cnblogs.com/Mcoming/p/11549891.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   BigSun丶  阅读(136)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示