python 初识函数
Posted 暂时没想好
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 初识函数相关的知识,希望对你有一定的参考价值。
初识函数
1. 什么是函数
2. 函数定义, 函数名, 函数体以及函数的调用
3. 函数的返回值
4. 函数的参数
1.函数
定义一个事情或者功能. 等到需要的时候直接去用就好了. 那么这里定义的东西就是?个函数.
函数: 对代码块和功能的封装和定义
2.函数的定义, 函数名, 函数体以及函数的调用
使用def关键字来定义函数, 函数的定义语法:
def 函数名():
函数体
函数名的命名规则和使用和变量基本?样(变量的命名规则), 函数体: 就是函数被执行之后要执行的代码
def back(): print("网上订票") print("坐火车回家") print("路上睡觉")
定义完了. 但是这个时候去执行. 会发现什么都没有发生. 因为我只定义了?个函数. 但是还没有执行过这个函数.
函数的调用: 使用函数名可以调用函数, 写法: 函数名(), 这个时候函数的函数体会被执行
def back(): print("网上订票") print("坐火车回家") print("路上睡觉") back() #调用函数
3.函数返回
执行完函数之后. 使用return来返回结果.
函数中return的使用:
函数中遇到return, 此函数结束, 不再继续执行.
def back(): print("网上订票") print("坐火车回家") return print("路上睡觉") #不会被执行 back()
给函数的调用者?个访问结果
def back(): print("网上订票") print("坐火车回家") print("路上睡觉") return "就是太慢了" think=back() print(think)
函数返回值可以有多个结果
def back(): print("网上订票") print("坐火车回家") print("路上睡觉") return "就是太慢了","有时候票也不好买","但是相对便宜" think=back() print(think) #(‘就是太慢了‘, ‘有时候票也不好买‘, ‘但是相对便宜‘) tuple
总结?下:
1. 遇到return. 此函数结束, 函数后面的东西将不会再执行
2. return 返回值
关于返回值:
如果return什么都不写 或者干脆不写return .那么返回的就是None
如果return后面写了?个值. 则调用者可以接收?个结果
如果return后面写了多个结果, 则调用者可以接收?个tuple, 调用者可以直接解构成多个变量
4.函数的参数
参数, 函数在调用的时候指定具体的?个变量的值. 就是参数. 语法:
def 函数名(参数列列表):
函数
def back(ways): print("网上订票") print("坐%s回家" % ways) print("路上睡觉") back("汽车") back("火车") back("飞机")
关于参数:
形参:写在函数声明的位置的变量叫形参. 形式上的?个完整. 表示这个函数需要xxx
实参:在函数调?用的时候给函数传递的值. 叫实参, 实际执行的时候给函数传递的信息. 表?示给函数 xxx
传参:给函数传递信息的时候将实际参数交给形式参数的过程被称为传参.
(1)参数的分类--实参的分类
位置参数:在访问back()的时候, 按照位置的顺序分别把"携程", "火车", 6小时 赋值给 search, ways, time. 在传参过程中. 系统会默认按照位置把实参赋值到形参.
def back(search,ways,time): print("打开%s进行查找"%search) print("坐%s回家" % ways) print("路上需要睡%s" %time) back("携程","火车","6小时") #打开携程进行查找 #坐火车回家 #路上需要睡6小时
练习: 编写函数, 给函数传递两个参数a, b. 比较a, b的大小, 返回 a, b中大的那个数
def my_max(a, b): if a > b: return a else: return b # 有点?儿麻烦, 我们在这?里里学一个三元运算符. def my_max(a, b): c = a if a > b else b # 当a>b成?立返回a, 否则返回b return c
关键字参数:函数在定义的时候参数非常多时,我们不需要记住每个参数的位置. 只要记住每个参数的名字就可以了了
def back(search,ways,time): print("打开%s进行查找"%search) print("坐%s回家" % ways) print("路上需要睡%s" %time) back(ways="火车",search="携程",time="6小时") #打开携程进行查找 #坐火车回家 #路上需要睡6小时
混合参数: 可以把上面两种参数混合着使用. 也就是说在调用函数的时候即可以给出位置参数, 也可以指定关键字参数
def back(search,ways,time): print("打开%s进行查找"%search) print("坐%s回家" % ways) print("路上需要睡%s" %time) back("携程",ways="火车",time="6小时") #正确 第一个位置赋值给search,后面的参数开始制定关键字
def back(search,ways,time): print("打开%s进行查找"%search) print("坐%s回家" % ways) print("路上需要睡%s" %time) back(search="携程","6小时",ways="火车") # 错误, 最开始使用了关键字参数, 那么后面的"6小时"的位置就串了,容易出现混乱
注意: 在使用混合参数的时候, 关键字参数必须在位置参数后面
(2)参数的分类--形参的分类
位置参数:按照位置来赋值, 到?目前为?止, 我们编写的函数都是这种
默认值参数:在函数声明的时候, 就可以给出函数参数的默认值. 在调用的时候可以 给出具体的值, 也可以不给值, 使用默认值.
比如, 我们录入咱们班学生的基本信息. 通过调查发现. 我们班大部分学生都是男生. 这个时候就可以给出?个sex=‘男‘的默认值.
def stu_info(name, age, sex=‘男‘): print("录?入学?生信息") print(name, age, sex) print("录?入完毕") stu_info("张强强", 18)
注意, 必须先声明位置参数, 才能声明默认值参数.
以上是关于python 初识函数的主要内容,如果未能解决你的问题,请参考以下文章