1、"值传递" 和"引用传递"
1)不可变的参数通过"值传递"。比如整数、字符串等
2)可变的参数通过"引用参数"。比如列表、字典。
3)避免可变参数的修改
4)内存模型简介
2、函数参数类型
1) def func() #无参数函数
2) def func(value1, value2) #有参数函数;位置参数
3) def func(name=value) #关键字参数函数
4) def func(*name) #可变参数个数,匹配并收集为 元组 的参数函数
5) def func(**name) #可变参数个数, 匹配并收集为 字典 的参数函数,入参必须为key=value形式
6) def func(*args, name) #可变参数个数, name必须按照关键字传递的参数函数
7) def func(a, *b, **d ) #* 和 ** 的联合使用, **必须在 *的后面
3、解包参数
1)与函数 def(*arg)、 def(**arg) 的定义相反,通过*语法对参数进行解包
4、本节总结
• 如何掌握本节内容
1)函数的传值类型、函数的参数类型、解包调用
2)课后:把代码自己敲一遍