网址访问做搜狗网站优化排
文章目录
- 前言
 - 一、定义函数
 - 二、函数参数
 - 三、参数类型
 - 四、函数返回值
 - 五、函数类型
 - 1、无参数,无返回值
 - 2、无参数,有返回值
 - 3、有参数,无返回值
 - 4、有参数,有返回值
 
- 六、函数的嵌套
 - 七、全局变量和局部变量
 - 1、局部变量
 - 2、全局变量
 
前言
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。
一、定义函数
'''
def 函数名():函数封装的代码
'''def demo():print("函数")demo()	# 函数
 
二、函数参数
'''
求和:a+b
'''def a_sum_b(a, b):a_b = a + bprint(a_b)a_sum_b(a=1, b=2)	# 3
 
三、参数类型
# 位置实参  ,按照参数顺序,给形参传递数据
def func(a, b):sum1 = a + bprint(sum1)func(1, 2)# 关键字实参 ,指定任何对应的形参,称为关键字实参
def func(a, b):sum1 = a + bprint(sum1)func(b=1, a=4)# 默认形参,形参设定默认值,称为默认形参   ,调用函数时,如果没有传入默认参数对应的实参,则使用默认值。
def func(a, b=10):sum1 = a + bprint(sum1)func(1, 2)  # 3
func(1)  # 11# 可变形参
'''
元组型可变形参:用于接收任意数量的位置实参可变形参的前边需要添加*,用于提示python解释器该参数为可变形参本质是将传递的参数包装成了元组使用可变形参直接用即可(不需要加*)args
'''def func(*args):'''求和'''result = 0for num in args:result += numprint(result)func(1, 2, 3)'''
字典型可变形参:可以接收任意数量的关键字实参定义参数时需要在形参名前添加**可变形参会将 关键字参数包装成字典
'''def func(name, **kwargs):  # 已经存在的形参, 其对应的关键字实参 不会被包装到字典中。字典型可变形参必须在形参列表的最后边print(name)  # 张三print(kwargs)  # {'age': '18'}func(name="张三", age="18") 
四、函数返回值
'''
求和:a+b
'''def a_sum_b(a, b):a_b = a + breturn a_ba_b = a_sum_b(a=1, b=2)
print(a_b)  # 3
 
五、函数类型
1、无参数,无返回值
def demo():print("函数")
 
2、无参数,有返回值
def demo():return "函数"
 
3、有参数,无返回值
def demo(s):print(s)s = "函数"
demo(s)	 # 函数
 
4、有参数,有返回值
def demo(a, b):return a + ba = "函数"
b = "你好!"
res = demo(a, b)
print(res)  # 函数你好! 
六、函数的嵌套
函数里面调用另一个函数
def demo1():print("函数")demo2()def demo2():print("你好!")demo1()
 
七、全局变量和局部变量
1、局部变量
'''
局部变量:定义:函数内部定义的变量,不同的函数内可以定义相同名字的变量,且互不影响。特点:局部变量的作用域只再函数内部目的:存储需要临时保存的数据
'''def func():a = 10print(a)func()  # 10
print(a)  # 报错:	NameError: name 'a' is not defined 
2、全局变量
'''
全局变量:定义:函数外边定义的变量叫做全局变量特点:全局变量能够在所有的函数中进行访问
'''
a = 10  # 全局变量def func():print(a)func()  # 10
print(a)  # 10'''
函数内如何修改全局变量,需要用到 global
'''
a = 10def func():global aa = 9print(a)func()  # 9
print(a)  # 9