银川商城网站开发设计,微信静首页制作代码,买卖友情链接,什么网站做美式软装设计理念目录 一、python函数1、函数介绍2、函数的定义3、函数的参数4、函数的返回值5、函数说明文档6、函数的嵌套调用7、变量的作用域8、综合案例9、函数与方法的区别 二、python函数进阶1、函数多返回值2、函数多种传参方式a、位置参数b、关键字参数c、缺省参数d、不定长参数 3、匿名… 目录 一、python函数1、函数介绍2、函数的定义3、函数的参数4、函数的返回值5、函数说明文档6、函数的嵌套调用7、变量的作用域8、综合案例9、函数与方法的区别 二、python函数进阶1、函数多返回值2、函数多种传参方式a、位置参数b、关键字参数c、缺省参数d、不定长参数 3、匿名函数a、函数作为参数传递b、lambda匿名函数 一、python函数
1、函数介绍
函数是组织好的、可重复使用的、用来实现特定功能的代码段
name 这是字符串
length len(name)
print(length)能直接调用len方法则len()是python内置的函数2、函数的定义
a、基本语法
def 函数名(传入参数):函数的内容return 返回值b、案例 定义简单的函数并调用
#定义函数
def output_content():print(hello)#调用函数
output_content()如果不调用函数函数的内容不会执行只有调用后才会执行
要先定义函数后调用函数。没有定义函数前无法调用3、函数的参数
a、基本介绍 功能在函数进行计算的时候接收外部提供的数据 多个参数之间用逗号分隔开
def 函数名(参数1,参数2,参数3):函数的内容return 返回值b、案例 创建一个函数传入两个数字打印两个数字的和
def get_sum_num(x , y):print(f和为{x y})get_sum_num(1,2)函数定义中提供的xy称为形式参数形参表示函数要两个参数 函数调用中提供的12称为实际参数实参表示函数执行时使用的参数
4、函数的返回值
a、基本介绍 函数在完成事情之后最后要返回给调用者的结果
def 函数名(参数):函数的内容return 返回值变量 函数名(参数)b、案例 定义一个函数将2数相加的内容返回给调用者并打印
def get_sum_num(x,y):return x yresult get_sum_num(1,2)
print(f结果为{result})c、补充 思考如果定义的函数没有使用return语句返回数据那么函数有返回值吗
实际上是有的这时会返回特殊的字面量None类型为class ‘NoneType’None表示的是空的无实际意义的意思函数返回None也就表示没有返回有意义的内容也就是返回了空的意思在if判断中None等同于False可以联合if判断函数是否有返回内容在定义变量时暂时不需要变量有具体值时可以用None代替。如name None
5、函数说明文档
a、基本语法 函数是纯代码语言想要理解含义就需要一行行的阅读代码 我们可以给函数添加说明文档辅助理解函数的作用
def func(x,y):func函数可以接收2个参数并返回两个参数的相加值:param x: 参数1:param y: 参数2:return: 返回的两个值的和return x yresult func(1,2)在pycharm中当鼠标悬停到函数调用的传参时会出现说明文档
6、函数的嵌套调用
a、基本语法 在一个函数中调用另一个函数就是函数的嵌套调用
b、案例 在函数a中调用b输出内容
def fun_b():print(b)def fun_a():print(a)fun_b()fun_a()7、变量的作用域
局部变量 定义定义在函数体内部的变量即只在函数体内部生效 作用在函数体内部临时保存数据当函数完成后则销毁局部变量
def func():num 100print(num)# 这个num就是局部变量全局变量
定义在函数体内、体外都能生效的变量
num 100
def func_a():print(num)def func_b():print(num)# 这个nun就是全局变量思考看如下代码试想最后会输出多少呢
num 100
def func_a():num 200
func_a()
print(num)最后是会输出100因为func_a方法中的num是一个局部变量只会影响函数内部的值
思考如果我们想在函数内部作用全局变量呢
可以使用global关键字定义全局变量
num 100
def func_a():global numnum 500func_a()
print(num) 这时就会输出5008、综合案例
案例要求开发一个存款取款的函数定义4个函数共有4个功能分别为查询余额1、存款2、取款3、退出4用户分别输入对应的数字则进入对应的功能用户未输入4前程序要永久运行
bol True
name
total_num 5000000# 存款函数
def add_money():global total_numput_num int(input(请输入存款金额))total_num put_numprint(f{name}您好您的余额为{total_num}元)# 取款函数
def get_money():global total_numput_num int(input(请输入取款金额))total_num - put_numprint(f{name}您好您的余额为{total_num}元)# 查询余额函数
def check_money():print(f{name}您好您的余额为{total_num}元)#主函数
def main():global bolglobal namename input(请输入您的姓名)while bol:print(f{name}你好请选择操作\n查询余额\t[输入1]\n存款\t[输入2]\n取款\t[输入3]\n退出\t[输入4])num input(请输入您的选择)if num 1:check_money()elif num 2:add_money()elif num 3:get_money()else:bol False
main()9、函数与方法的区别
函数的定义方式
def add(x,y):return x y方法的定义方式
class Studentdef add(x,y):return x y函数和方法功能一样有传入参数也有返回值只是使用时不同。 使用函数时
num add(1,2)使用方法时
student Student()
num student.add(1,2)二、python函数进阶
1、函数多返回值
多个返回值用逗号分隔开
def fun1():return 1,hello,Truex,y,z fun1()
print(x) 结果为1
print(y) 结果为hello
print(z) 结果为True2、函数多种传参方式
a、位置参数
传参的位置固定自动匹配参数值
def fun1(name,age,sex):print(f姓名{name}年龄{age}性别{sex})
fun1(张三,18,男)结果为姓名张三年龄18性别男b、关键字参数
调用函数时通过键值对的形式传参
def fun1(name,age,sex):print(f姓名{name}年龄{age}性别{sex})
fun1(age18,sex男,name张三)结果为姓名张三年龄18性别男c、缺省参数
缺省参数也叫默认参数定义函数如没有传入值则提供参数的默认值有默认值的参数需要写到无默认值参数的后面
def fun1(name李四,age18,sex女):print(f姓名{name}年龄{age}性别{sex})
fun1(sex男,name张三)结果为姓名张三年龄18性别男d、不定长参数
不定长参数也叫可变参数用于不确定调用时需要传递参数的个数分为位置传递不定长参数和关键字传递不定长参数
# 位置传递不定长参数
def fun1(*args):print(args) 此时的数据类型为元组
fun1(张三,18,男)
结果为(张三, 18, 男) 需要以直接传入的方式传参# 关键字传递不定长参数
def fun1(**kwargs):print(kwargs) 此时的数据类型为字典
fun1(name张三,age18,sex男) 需要用key-value的形式传参
结果为{name: 张三, age: 18, sex: 男}3、匿名函数
a、函数作为参数传递
函数本身也能作为参数传入另一个函数种
def fun1(fun2):result1 fun2 在一个函数种调用参数传入的另一个函数print(result1)def fun2(x , y):return x yfun1(fun2(1,2)) 调用时传入函数名和函参数b、lambda匿名函数 特点 lambda可以定义匿名函数就是无名称的函数有名称的函数可以重复使用匿名函数只能使用一次lambda定义的匿名函数函数体只能写一行无法写多行 基本语法lambda 入参: 函数体(一行代码)
def fun1(fun2):result1 fun2(1,2)print(result1)
fun1(lambda x,y:xy) 参数为x和y函数体为xy结果为3
文章转载自: http://www.morning.qtfss.cn.gov.cn.qtfss.cn http://www.morning.rkfxc.cn.gov.cn.rkfxc.cn http://www.morning.qmwzz.cn.gov.cn.qmwzz.cn http://www.morning.rwhlf.cn.gov.cn.rwhlf.cn http://www.morning.npmcf.cn.gov.cn.npmcf.cn http://www.morning.bdsyu.cn.gov.cn.bdsyu.cn http://www.morning.kpbgp.cn.gov.cn.kpbgp.cn http://www.morning.nlkm.cn.gov.cn.nlkm.cn http://www.morning.kxqpm.cn.gov.cn.kxqpm.cn http://www.morning.grfhd.cn.gov.cn.grfhd.cn http://www.morning.prkdl.cn.gov.cn.prkdl.cn http://www.morning.nmwgd.cn.gov.cn.nmwgd.cn http://www.morning.wqmyh.cn.gov.cn.wqmyh.cn http://www.morning.jqjnx.cn.gov.cn.jqjnx.cn http://www.morning.fnfhs.cn.gov.cn.fnfhs.cn http://www.morning.lsgjf.cn.gov.cn.lsgjf.cn http://www.morning.amonr.com.gov.cn.amonr.com http://www.morning.rwpfb.cn.gov.cn.rwpfb.cn http://www.morning.qtkdn.cn.gov.cn.qtkdn.cn http://www.morning.jrlgz.cn.gov.cn.jrlgz.cn http://www.morning.mbdbe.cn.gov.cn.mbdbe.cn http://www.morning.bpmfg.cn.gov.cn.bpmfg.cn http://www.morning.rbxsk.cn.gov.cn.rbxsk.cn http://www.morning.mqss.cn.gov.cn.mqss.cn http://www.morning.nkyc.cn.gov.cn.nkyc.cn http://www.morning.ldynr.cn.gov.cn.ldynr.cn http://www.morning.ggnkt.cn.gov.cn.ggnkt.cn http://www.morning.snrhg.cn.gov.cn.snrhg.cn http://www.morning.drhnj.cn.gov.cn.drhnj.cn http://www.morning.jbtzx.cn.gov.cn.jbtzx.cn http://www.morning.pdwzr.cn.gov.cn.pdwzr.cn http://www.morning.xswrb.cn.gov.cn.xswrb.cn http://www.morning.qpqcq.cn.gov.cn.qpqcq.cn http://www.morning.lssfd.cn.gov.cn.lssfd.cn http://www.morning.pangucheng.cn.gov.cn.pangucheng.cn http://www.morning.wkkqw.cn.gov.cn.wkkqw.cn http://www.morning.kqgqy.cn.gov.cn.kqgqy.cn http://www.morning.nfgbf.cn.gov.cn.nfgbf.cn http://www.morning.wcft.cn.gov.cn.wcft.cn http://www.morning.qkwxp.cn.gov.cn.qkwxp.cn http://www.morning.spwln.cn.gov.cn.spwln.cn http://www.morning.swzpx.cn.gov.cn.swzpx.cn http://www.morning.qcnk.cn.gov.cn.qcnk.cn http://www.morning.qxrct.cn.gov.cn.qxrct.cn http://www.morning.ygxf.cn.gov.cn.ygxf.cn http://www.morning.ctxt.cn.gov.cn.ctxt.cn http://www.morning.a3e2r.com.gov.cn.a3e2r.com http://www.morning.qpnb.cn.gov.cn.qpnb.cn http://www.morning.pffx.cn.gov.cn.pffx.cn http://www.morning.qlhkx.cn.gov.cn.qlhkx.cn http://www.morning.ksgjn.cn.gov.cn.ksgjn.cn http://www.morning.fktlr.cn.gov.cn.fktlr.cn http://www.morning.jzdfc.cn.gov.cn.jzdfc.cn http://www.morning.lzqnj.cn.gov.cn.lzqnj.cn http://www.morning.yqkxr.cn.gov.cn.yqkxr.cn http://www.morning.fmqw.cn.gov.cn.fmqw.cn http://www.morning.abgy8.com.gov.cn.abgy8.com http://www.morning.hhboyus.cn.gov.cn.hhboyus.cn http://www.morning.plzgt.cn.gov.cn.plzgt.cn http://www.morning.gxklx.cn.gov.cn.gxklx.cn http://www.morning.gnkbf.cn.gov.cn.gnkbf.cn http://www.morning.newfeiya.com.cn.gov.cn.newfeiya.com.cn http://www.morning.zcwzl.cn.gov.cn.zcwzl.cn http://www.morning.rkwlg.cn.gov.cn.rkwlg.cn http://www.morning.sfdsn.cn.gov.cn.sfdsn.cn http://www.morning.ndxrm.cn.gov.cn.ndxrm.cn http://www.morning.ntgsg.cn.gov.cn.ntgsg.cn http://www.morning.dyxzn.cn.gov.cn.dyxzn.cn http://www.morning.dpbdq.cn.gov.cn.dpbdq.cn http://www.morning.wrlcy.cn.gov.cn.wrlcy.cn http://www.morning.hjjfp.cn.gov.cn.hjjfp.cn http://www.morning.fnywn.cn.gov.cn.fnywn.cn http://www.morning.bwygy.cn.gov.cn.bwygy.cn http://www.morning.uqrphxm.cn.gov.cn.uqrphxm.cn http://www.morning.qjlnh.cn.gov.cn.qjlnh.cn http://www.morning.nyhtf.cn.gov.cn.nyhtf.cn http://www.morning.hfyll.cn.gov.cn.hfyll.cn http://www.morning.gnzsd.cn.gov.cn.gnzsd.cn http://www.morning.mkyny.cn.gov.cn.mkyny.cn http://www.morning.wrlxt.cn.gov.cn.wrlxt.cn