Python进阶运用详解(六):自定义函数def实战指南
函数
一.函数的定义
函数是组织好,可以重复使用,用来实现单一,或者关联功能的代码段
二.pycharm中函数定义、运用的结构
三.函数的优点?
a.降低代码的冗余
b.增加代码的复用性,提高开发效率
c.提高程序的拓展性
d.把代码片段放在函数当中
四.定义函数
(1)自定义函数
(2)内置函数
(一)自定义函数
a.函数格式:
def 函数名(函数入参参数):
函数体
函数名(实际参数) 调用函数
a .函数调用方法
第一种:
b.第二种:mian方法调用
if __name__ == '__main__': 主函数调用
主函数的解释:
解释:
if __name__ == '__main__': 是函数的入口,也称为主函数
__name__ 是当前模块名,当模块被直接运行时模块名为 __main__ ,这句话的
意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,
代码块不被运行
def hs1(): print(1) def hs2(): print(2) def hs3(): print(3) if __name__ == '__main__': #hs1() hs2() hs3()
c.第三种:跨模块调用
在aa文件下先创建函数(调用其他文件的函数)
在bb文件调用aa文件已有的函数(先导入,在调用)
五.函数中的参数
(1)无参数
def hs1(): print(1) if __name__ == '__main__': hs1(
(2)单个参数
def hs1(a): print(a+1) if __name__ == '__main__': hs1(2)
(3)传入多参数
def hs1(a,b): print(a+b) if __name__ == '__main__': hs1(2,1)
(4)参数有默认参数
def hs1(a,b=3): print(a+b) if __name__ == '__main__': hs1(2)
(5)参数是可变长元组(*表示)
def hs1(b,*a): print() print(a) if __name__ == '__main__': hs1(1,2,3,34,5,55)
(6)传的参数是可变长列表(*表示)
(7)参数是可变长字典(**表示)
def hs1(b,*a,**d): print(b) print(a) print(d) if __name__ == '__main__': hs1(1,2,3,34,5,55,name="zs",age="lisi")
字典出入:
d1={"name":"zs","age":18} t1=(1,2,3,4) list1=[1,2,3,4] def hs1(b,*a,**d): print(b) print(a) print(d) if __name__ == '__main__': hs1(1,*list1,**d1)
六、函数中的变量
定义:全局变量和局部变量
(1)全局变量:在函数内,外都可以引用
(2)局部变量:只能在函数内容引用
(3)通过global将局部变量改成全局变量(会覆盖原来相同名称的全局变量)
a、优先级比全局变量高,比如有全局变量a=100,然后在函数内通过global定义了一个全局变量a=300,那么调用a这个变量得到的是300,会覆盖原来的全局变量
七、return 返回值
return 函数
返回值
(1)
Python中,用 def 语句创建函数时,可以用 return 语句指定应该返回的值,该返回值可以是任意类型。需要注意的是,return 语句在同一函数中可以出现多次,但只要有一个得到执行,就会直接结束函数的执行。函数中,使用 return 语句的语法格式如下:return [返回值]
其中,返回值参数可以指定,也可以省略不写(将返回空值 None)
(2)
1、在程序开发中,有时候会希望一个函数执行程序结束后,告诉调用者一个结果,以便调用者针对具体的结果做后续的处理。
2、返回值是函数完成工作后,最后给到调用者的一个结果。
3、在函数中使用return关键字可以返回结果。
4、调用函数的一方可以使用变量来接收函数的返回结果。
注意点:return后面的语句不执行
案例:
def hs(): a=100 return a def hs2(): bl=hs() bl+=100 print(bl) hs2()
作业:
作业:
需求:登录银行系统并显示余额,有两个功能第一个是登录,第二个是登录后显示余额,先登录然后根据登录是否成功然后是否显示余额。
分析思路:如果想查询到余额,前提必须登录,所以现在我们用两个函数来处理,第一个函数实现登录,第二个函数实现余额查询,调用第一个函数得到的结果给第二个函数,然后第二个函数根据结果进行代码处理。
作者:学海吾涯回头是俺