函数
1.函数的作用 2.函数的定义 3.函数的参数 4.函数的返回值 5.全局变量和局部变量 6.内部函数
1.函数的作用
将重复的代码封装到函数,使用时直接找函数即可。 大大增强了代码的模块化和提高了代码的重复利用率。
2.函数的定义
'''
格式:
def 函数名([参数,参数,....]):
函数体(重复的代码)
注意事项:
1.必须使用关键字def
2.函数体注意缩进
3.函数名() 绑定在一块,是必须写的
'''
3.函数的参数
'''
def func():
pass(函数体)
func() -----> 进行调用
'''
'''
1.普通参数
def func(name,age):
pass(函数体)
func('小谢','18') --->这里形参和实参个数要一致
'''
def func(name
,age
):
print(name
,age
)
func
('小谢','18')
'''
2.可变参数
A.
def func(*args):
pass
func() ------>函数调用时,实参的个数可以没有,也可以有多个。但是不可以是关键字参数(key = value这种类型)
func(4)
func('小谢',18)
'''
def func(*args
):
print(args
)
func
()
func
(4)
func
('小谢', 18)
'''
B:
def func(**kwargs):
pass
func(a = 1,b = 2) ---->函数调用时,实参的个数可以没有,也可以多个,但必须是关键字参数
'''
def func(**kwargs
):
print(kwargs
)
func
(a
=1, b
=2)
def func(*args
, **kwargs
):
print(args
)
print(kwargs
)
list1
= [1, 3]
dict1
= {'1': 'a', '2': 'b'}
func
(*list1
, **dict1
)
def func(name
, *args
, **kwargs
):
print(name
, args
, kwargs
)
func
('小谢')
func
('小谢', a
=1)
def func(name
,age
= 18)
pass
4.函数的返回值
'''
return 返回值
1.return 后面可以是一个参数,接收的时候x = add(1,2)
2.return 后面也可以是多个参数,如果是多个参数则底层会将多个参数先放到一个元组中
将元组作为整体返回。
3.接收的时候也可以是多个。
'''
def add(a
, b
):
return a
+ b
x
= add
(1, 2)
print(x
)
y
= add
(1, 2)
print(y
)
i
, j
= add
(1, 2)
print(i
, j
)
5.全局变量和局部变量
1.全局变量:声明在函数外层,所有的函数都可以访问 2.局部变量:在函数内部声明,仅限于函数内部访问 3.全局变量可以在函数中随便访问,但是全局变量如果是不可变的,则在函数中进行修改时需要添加global关键字(global 变量);全局变量是可变的时候,不需要在函数中添加global关键字
6.内部函数
就是函数中包函数 在内部函数中: 1.可以访问外部函数的变量 2.内部函数可以修改外部函数的可变类型的变量比如:list1 3.内部函数修改全局的不可变变量时,需要在内部函数中声明 global 变量 内部函数修改外部函数的不可变量时,需要在内部函数中声明 nonlocal 变量 4.locals() 查看当前的函数中声明的内容有哪些,以字典的形式输出 print(locals()) globals()查看全局中声明的内容有哪些,以字典的形式输出 print(globals()) 注意这个里 面会输出一些系统的键值对
一个注意事项: 函数声明不顶用,必须进行函数调用才会执行