今天学习了python函数的6个小内容:
1、引用传递:实质在传递内容地址。
代码:
def get_sufix(path):
“”"
这个方法获取文件的后缀名
“”"
return path[path.rfind(".")+1:]
s = “C:\Users\liujianhong\Desktop\day07\课堂代码\a.avi”
sufix = get_sufix(s)
print(“该文件的后缀名是{}”.format(sufix))
2、函数默认值
在python,可以为函数的参数给予默认值
一旦某个存在默认值,那么如果在调用的时候,
不传递这个参数,则按照默认值
减少调用时的繁杂操作
注意:在定义函数时,如果存在有默认值的参数,一定要写在没有默认值的参数后面,
否则在调用时,无法确定参数到底传给哪个参数。
代码:
在python,可以为函数的参数给予默认值
一旦某个存在默认值,那么如果在调用的时候,
不传递这个参数,则按照默认值
减少调用时的繁杂操作
def get_circle_area(radius, PI=3.14):
“”"
求圆的面积
“”"
return radiusradiusPI
if name == ‘main’:
r = float(input(“请输入圆的半径:”))
PI = 3.14
area = get_circle_area(r, 3.14159)
print(“半径为{}的圆面积是{}”.format(r, area))
3、全局变量和局部变量
全局变量就是在定义py文件中,能被任何函数类能正常访问的变量
局部变量是指定义函数内部变量。
4、参数问题
默认值参数、可变参数、命名参数、万能参数
5、匿名函数
lambda表达式
lambda:语言
def a():
print("hello world")
# lambda:print("hello world")
def add(x, y):
return x + y
# lambda x,y: x + y
优点:简化代码书写
缺点:降低了代码的可读性,增加代码的维护成本
6、递归
必要条件:
函数自身调用自身
要有终止条件(不能死循环)