关于函数的作用

  • 增大代码的复用价值,并且增加代码的可维护性,即只需在函数中进行相关修改,其他用到函数的地方就会相应修改,不用做重复的工作
  • 分解任务,使程序更加具有逻辑性
  • 使程序模块化

关于不定长参数的使用

  • 当不确定参数长度时,可通过不定长参数形式接收参数
  • 方式一:接收不确定长度的元组,即func(*tuple),在函数体中就可以使用元组中的值(这里使用元组的原因有二,1.元组是有序的,可以遍历使用 2.元组内元素是不可变的,函数传入的参数有恰好是不希望被改变的,而是拿来使用的,方式二中字典同样有这样的原因)
  • 方式二:接收不确定长度的字典,即func(**dict),需要注意的是在传递参数时,写法是func(name="aaa", age=18),在函数体中就可以使用字典{"name":"aaa", "age":18}
  • 不定长参数的装包和拆包:装包即将几个值通过func(*tuple)或者func(**dict)方式进行装包后传入函数体,但再函数体中只能使用对应的元组和字典,要使用其中元组就要通过遍历来实现,这里可以直接通过拆包即可将其中元素拿出来,即使用时再在前面加*或者**

关于参数的传递方式(重点)

  • 在python中,参数只能通过传址这一种方式传递,即def func(num):函数体;d=10;func(10);这里d和num都是指向系统为10分配的那一块存储空间,而不是开辟两块空间分别存放10,然后再将唯一标识赋给d和num
  • 可用id()函数查看d和num的地址即可

关于函数的描述信息

  • 函数描述信息是对函数的说明
  • 描述信息包括函数的作用、参数和返回值
  • 参数说明包括参数的含义、类型、是否可选(有没有默认值,有默认值即可选,即可以不写)
  • 返回值说明包括含义、类型和类容