第四章 函数

1.函数初识:

def :关键字 -- 定义

函数名:和变量的定义方式一样

(): 用于参数传递,:

  1. 形参:函数的定义中()内的是形参
  2. 实参:调用的()内是实参
  3. 传参:调用时将实参传递给和形参的过程
  4. 位置传参时,形参实参必须一一对应。

: -- 定义结束

2.函数定义与调用

定义一个函数:

#定义函数
#def mt_len():
#函数体
def my1_len(x):
count = 0
for i in x:
count += 1
print(count)3
return count#return 的内容返回给了函数的调用。return下方的代码不执行
print(count)
#调用函数:
my_len()

3.函数的返回值

return:函数的返回值

return 'a','b','c'#结果('a','b','c')

return :

​ 1.返回多个数据的时候,返回的是元组

​ 2.return 的内容返回给了函数的调用

​ 3.return下方的代码不执行,函数终止(不可终止循环)

​ 4.return 没写返回值,或没写return,返回值都是None

4.函数的参数:

​ 优先级:位置参数 > 关键字参数 > 默认参数

​ 1.形参:函数定义的时候叫做形参

​ 位置参数

​ 默认参数

​ 混合参数

​ 2.实参:函数调用的时候叫做实参

​ 位置参数

​ 关键字参数

​ 混合参数

#位置传参
def yue(a,b,c):
print(f"打开{a},{c},{b}")
yue(True,(123),[1,2,5]) def fun(a,b = 1):#b=1 默认参数
print(a,b)
fun(3)
fun(3,8) def user(name,age,sex = "男"):#位置参数 > 默认参数, name,age是位置参数,sex = '男'是默认参数
print(name,sex,age)
user('ww','29') def fun(a,b,c):
print(a,b,c)
fun(a=1,c=5,b=2)#关键字参数
fun(1,2,c=5)#混合参数

5.函数的好处;

  1. 减少代码的重复性(冗余)
  2. 代码可读性高
  3. 将功能进行封装

菜中菜:

#提示作用,没有约束作用
def fun(a:int,b:str):
print(a,b)
fun(1,2)
list1 = [1,2,3,4,5]
def fun(x):
return if "大于五"len(x) >5 else "不大于"
print(fun(list1))
#三元运算符:
#变量 = 条件成立的结果 条件判断 条件不成立的结果

enumerate:枚举法获取索引及其对应的值

def fun(x):
dic = {}
for k,v in enumerate(x):
dic[k] = v
return dic
list1 = [1,2,3,4,5,6,7,8,9,11]
print(list1)

最新文章

  1. [Python] urllib2.HTTPError: HTTP Error 403: Forbidden
  2. ZOJ 2974 矩阵快速幂
  3. 区分super和this
  4. imx6 framebuffer 分析
  5. mysql开启general log的方法
  6. Delphi基本图像处理代码
  7. Android Listview with different layout for each row
  8. mysql 查询随机一条记录
  9. iOS 之播放系统声音
  10. 部署到Linux使用VS Code 开发.NET Core 应用程序
  11. 【转载】js常用方法和片段
  12. pyqt5 动画学习(四) 旋转动画,使用QGraphicsView让自己的控件旋转起来
  13. (leetcode:选择不相邻元素,求和最大问题):打家劫舍(DP:198/213/337)
  14. SSM框架多数据源和AOP事务管理之间
  15. 如何在HTML表格里定位到一行数据
  16. JQuery 中的选择器
  17. Linux命令:help
  18. webpack 非严格模式设置 npm i babel-plugin-transform-remove-strict-mode
  19. qt5信息提示框QMessageBox用法
  20. spring boot 1.x完整学习指南(含各种常见问题servlet、web.xml、maven打包,spring mvc差别及解决方法)

热门文章

  1. C#高性能大容量SOCKET并发(十一):编写上传客户端
  2. UWP入门(七)--SplitView详解与页面跳转
  3. vue补充
  4. redis的下载及使用
  5. SYN1618型 高精度天文时间同步系统
  6. 分享五个404页面模板 超好看的404页面你的网站离不了 seo优化404
  7. Redis 学习笔记(篇二):字典
  8. MyBatis 源码分析
  9. Java学习笔记——设计模式之八.外观模式
  10. javascript中中文转码的方法