翼度科技»论坛 编程开发 python 查看内容

函数或方法参数传递问题

4

主题

4

帖子

12

积分

新手上路

Rank: 1

积分
12
★ 一般情况
  1. 函数参数的传入顺序依次为:  
  2. 必备参数 => 默认参数 => 不定长参数 => 关键字参数
复制代码

  • 案例
    1. # 函数传入参数顺序    必备 默认 不定长
    2. def double_sum(x, y=88, *args, **kwargs):
    3.     print(x)
    4.     print(y)
    5.     print(args)
    6.     print(kwargs)
    7. double_sum(10, 20, 30, 40, name=10)
    复制代码
  • 执行结果
    1. 10
    2. 20
    3. (30, 40)
    4. {'name': 10}
    复制代码
★ 特殊情况
  1. 如果很多个值都是不定长参数,那么这种情况下,可以将缺省参数放到 *args的后面, 但如果有**kwargs的话,**kwargs必须是最后的(python3环境下)
复制代码

  • 案例
    1. def sum_nums_3(a, *args, b=22, c=33, **kwargs):
    2.     print(a)
    3.     print(b)
    4.     print(c)
    5.     print(args)
    6.     print(kwargs)
    7. sum_nums_3(100, 200, 300, 400, 500, 600, 700, b=1, c=2, mm=800, nn=900)
    复制代码
  • 执行结果
    1. 100
    2. 1
    3. 2
    4. (200, 300, 400, 500, 600, 700)
    5. {'mm': 800, 'nn': 900}
    复制代码
★ 语法格式描述说明
  1. apply_async(func[, args[, kwds]]) 
  2. Process([group [, target [, name [, args [, kwargs]]]]])
  3. "(" : 表示是必传参数,
  4. "[" : 表示可选参数,即已配置缺省参数值
  5. "[, 参数名称" : 表示非第一参数,使用该参数需从第一个依次填写参数,或者使用参数名称赋值(常用)  args=(1,)
复制代码
来源:https://www.cnblogs.com/cs-songbai/p/18110822
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具