yxsailing 发表于 2018-8-10 12:47:51

python-函数-参数

  函数就是为了把一堆语句组合到一起形成一个部件:
  1.最大的代码重用,最小的代码冗余
  2.流程的分解,函数讲的是流程,告诉你怎么去做事
  实参和形参
  实参:实际参数,调用函数时传给函数的参数,可以是常量、变量、表达式、函数,传给形参
  形参:形式参数,不占内存空间,形参变量只有在调用时才分配内存单元,目的是函数调用时接收实参
  二者区别:
  实参:是一个变量,占用内存空间,数据传送单向,实参传给形参,不能形参传给实参
  形参:虚拟的,不占用内存空间,形参变量只有被调用时才分配内存单元
  函数传递的参数说明



  标红的部分尤其注意,否则就会有语法错误,另外还有一个就是如果给定了默认值的参数,一定要放在没有默认值的参数后面,放到前面同样会有语法错误,
  *星args返回的是元组tuple元祖星星args返回的是字典
  python默认会从左到右匹配变量名,对于参数,划线是最好的学习方法
  country没有给就是默认的CN

  ...
  def f(a,b,c)
  prin(a,b,c)
  f(1,2,3)
  输出:1 2 3
  ...
  关键字参数,基于位置的参数首先按照从左到右依次匹配,之后再进行基于关键字匹配,也就是如果使用了关键字传递参数,参数是通过变量名传递而不再是位置。
  ...
  f(1,b=3,c=2)
  1 3 2
  ...
  默认参数 就是调用函数时没有传就用默认的值,传了就用传的值
  ...
  def f(a,b=2,c=3):
  print(a,b,c)
  f(1)
  f(1,2)
  f(1,c=2,b=3)都可以
  ...
  关键字和默认参数混用案例挺简单,一看激动

  任意参数有这两个例子就可以看懂,一个元组,一个字典

  最后这个混合使用的也特别好,画好线一目了然

  另外一个知识点就是解包函数,说的调用函数时传递的参数带有星号,予以为解包,解开元组,解开字典。
  相关连接
页: [1]
查看完整版本: python-函数-参数