当前位置:   article > 正文

【Python基础】之函数及其参数_def func():

def func():

1.函数定义

  • def
  • 函数名
  • ():
  • 函数体
  • 形式参数(非必须)
  • 返回值(非必须)

2.函数的参数(传入方式)

2.1形参与实参

形式参数:函数定义时,定义的参数;实际参数:函数运行时传入的参数

2.2默认按照顺序的传入方式

  1. #定义函数
  2. def func(a, b):
  3. pass
  4. #执行函数 按顺序传入,a=1,b=2
  5. func(1, 2)# a=1,b=2

2.3不按照顺序传入,以【形参=实参】的形式传入参数

  1. #定义函数
  2. def func(a, b):
  3. pass
  4. #以下两个执行过程等价
  5. func(a = 1, b = 2)
  6. func(b = 2, a = 1)

2.4默认参数

  1. #定义函数,b默认等于2
  2. def func(a, b = 2):
  3. pass
  4. #执行函数,可以只传a,默认b=2
  5. func(1)#a = 1, b = 2
  6. func(1, 3)#a = 1, b = 3

2.5动态参数

  • 在形参前加【*】号,那么调用函数时,会把传入的不限个数的非键值对的实参整个为一个元组赋值给形参,
  • 在形参前加【**】号,那么调用函数时,会把传入的不限个数的键值对形式的实参整个为一个字典赋值给形参
  • 在定义函数时,单个【*】在前,【**】在后,通常这样的动态形参用以下变量名表示:【*args】,【**kwargs】
  • 在定义函数时,如果还有非动态参数a,那么定义函数时,形参必须按以下顺序传入函数,(a,*args,**kwargs)
  1. #只定义*args
  2. def func(*args):
  3. print(args)
  4. func(1,2,'str',[3,4])#输出:(1, 2, 'str', [3, 4])
  1. #定义**kwargs
  2. def func(**kwargs):
  3. print(kwargs)
  4. func(k1 = 1, k2 = 'str')#输出:{'k1': 1, 'k2': 'str'}
  1. #定义*args,**kwargs
  2. def func(*args, **kwargs):
  3. print(args, kwargs)
  4. func(2,3,k1 = 1, k2 = 'str')#输出:(2, 3) {'k1': 1, 'k2': 'str'}
  1. #定义a,*args,**kwargs
  2. def func(a, *args, **kwargs):
  3. print(a, args, kwargs)
  4. func(1,2,3,k1 = 1, k2 = 'str')#输出:1 (2, 3) {'k1': 1, 'k2': 'str'}

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/544270
推荐阅读
相关标签
  

闽ICP备14008679号